고드름 샷

This commit is contained in:
Ino 2024-12-17 10:48:30 +09:00
parent aee12637d5
commit c4f0743690
11 changed files with 217 additions and 19621 deletions

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,126 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!1 &4058017713338826770
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 5618725199891634789}
- component: {fileID: 8156025669217981766}
m_Layer: 0
m_Name: Effect_Hit_IceArrow
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &5618725199891634789
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4058017713338826770}
serializedVersion: 2
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children:
- {fileID: 212639319494637295}
m_Father: {fileID: 0}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!114 &8156025669217981766
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4058017713338826770}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 456d2bd1c5c2e5e4b8b948836c4975a4, type: 3}
m_Name:
m_EditorClassIdentifier:
NoUseParticleTime: 1
OffTime: 1
add_offset: {x: 0, y: 0, z: 0}
e_EffectLocation: 0
tf_Target: {fileID: 0}
--- !u!1001 &4540709761468238912
PrefabInstance:
m_ObjectHideFlags: 0
serializedVersion: 2
m_Modification:
serializedVersion: 3
m_TransformParent: {fileID: 5618725199891634789}
m_Modifications:
- target: {fileID: 2094996107312550690, guid: c4aac21ef17faf44993216514115b9e1,
type: 3}
propertyPath: m_Name
value: FX_BlueRing_Exp
objectReference: {fileID: 0}
- target: {fileID: 4463248847572089519, guid: c4aac21ef17faf44993216514115b9e1,
type: 3}
propertyPath: m_LocalPosition.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 4463248847572089519, guid: c4aac21ef17faf44993216514115b9e1,
type: 3}
propertyPath: m_LocalPosition.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 4463248847572089519, guid: c4aac21ef17faf44993216514115b9e1,
type: 3}
propertyPath: m_LocalPosition.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 4463248847572089519, guid: c4aac21ef17faf44993216514115b9e1,
type: 3}
propertyPath: m_LocalRotation.w
value: 1
objectReference: {fileID: 0}
- target: {fileID: 4463248847572089519, guid: c4aac21ef17faf44993216514115b9e1,
type: 3}
propertyPath: m_LocalRotation.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 4463248847572089519, guid: c4aac21ef17faf44993216514115b9e1,
type: 3}
propertyPath: m_LocalRotation.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 4463248847572089519, guid: c4aac21ef17faf44993216514115b9e1,
type: 3}
propertyPath: m_LocalRotation.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 4463248847572089519, guid: c4aac21ef17faf44993216514115b9e1,
type: 3}
propertyPath: m_LocalEulerAnglesHint.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 4463248847572089519, guid: c4aac21ef17faf44993216514115b9e1,
type: 3}
propertyPath: m_LocalEulerAnglesHint.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 4463248847572089519, guid: c4aac21ef17faf44993216514115b9e1,
type: 3}
propertyPath: m_LocalEulerAnglesHint.z
value: 0
objectReference: {fileID: 0}
m_RemovedComponents: []
m_RemovedGameObjects: []
m_AddedGameObjects: []
m_AddedComponents: []
m_SourcePrefab: {fileID: 100100000, guid: c4aac21ef17faf44993216514115b9e1, type: 3}
--- !u!4 &212639319494637295 stripped
Transform:
m_CorrespondingSourceObject: {fileID: 4463248847572089519, guid: c4aac21ef17faf44993216514115b9e1,
type: 3}
m_PrefabInstance: {fileID: 4540709761468238912}
m_PrefabAsset: {fileID: 0}

View File

@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: a37875883dd2a014b960ac0f33532d17
PrefabImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

File diff suppressed because it is too large Load Diff

View File

@ -224,7 +224,12 @@ public class ProjectileBase : MonoBehaviour
dinfo.act_AfterFreezing = act_afterFreezing; dinfo.act_AfterFreezing = act_afterFreezing;
return dinfo; return dinfo;
} }
protected DamageInfo Get_DamageInfo(bool extradmg = false) { m_DamageInfo.bExtraDmg = extradmg; return m_DamageInfo; } protected DamageInfo Get_DamageInfo(bool extradmg = false, bool calcri = true)
{
m_DamageInfo.bExtraDmg = extradmg;
if (calcri) m_DamageInfo.Cal_Cri(m_ProjectTileData.shooter.m_AttackType, m_ProjectTileData.shooter.Get_StatInfo());
return m_DamageInfo;
}
protected bool IsStep(int _step) protected bool IsStep(int _step)
{ {
var sdata = m_ProjectTileData.shooter.Get_ServerData(); var sdata = m_ProjectTileData.shooter.Get_ServerData();
@ -321,8 +326,7 @@ public class ProjectileBase : MonoBehaviour
var hitter = other.GetComponent<Actor>(); var hitter = other.GetComponent<Actor>();
if (m_ProjectTileData.shooter.IsEnemy() != hitter.IsEnemy()) if (m_ProjectTileData.shooter.IsEnemy() != hitter.IsEnemy())
{ {
m_DamageInfo.Cal_Cri(m_ProjectTileData.shooter.m_AttackType, m_ProjectTileData.shooter.Get_StatInfo()); hitter.Get_Damage(Get_DamageInfo());
hitter.Get_Damage(m_DamageInfo);
m_ProjectTileData.Action_OnHit?.Invoke(hitter); m_ProjectTileData.Action_OnHit?.Invoke(hitter);
Show_HitEffect(true, hitter); Show_HitEffect(true, hitter);
if (Off_byHit) Off(false); if (Off_byHit) Off(false);

View File

@ -16,7 +16,7 @@ public class Skill_CurseofWitch : ProjectileBase
if (!DSUtil.CheckNull(_data.target)) if (!DSUtil.CheckNull(_data.target))
{ {
var dinfo = Get_DamageInfo(); var dinfo = Get_DamageInfo(false, false);
_data.target.Get_Damage(dinfo); _data.target.Get_Damage(dinfo);
var curseTime = _data.m_SkillListTableData.f_ExtraValue1; var curseTime = _data.m_SkillListTableData.f_ExtraValue1;
_data.target.Buff_or_Debuff(eCC.ATKSPD_Down, curseTime, _data.Get_SkillDamagePercent()); _data.target.Buff_or_Debuff(eCC.ATKSPD_Down, curseTime, _data.Get_SkillDamagePercent());

View File

@ -15,7 +15,7 @@ public class Skill_EarthWorm : ProjectileBase
actor => actor =>
{ {
var summon = actor as SummonActor; var summon = actor as SummonActor;
var dmg = (float)Get_DamageInfo().Damage; var dmg = (float)Get_DamageInfo(false, false).Damage;
summon.Set(_data.shooter.IsEnemy(), _data.shooter, _data.LifeTime, dmg, dmg, IsStep(3) ? (int)Get_AwakenData(3, 1) : 1); summon.Set(_data.shooter.IsEnemy(), _data.shooter, _data.LifeTime, dmg, dmg, IsStep(3) ? (int)Get_AwakenData(3, 1) : 1);
Off(); Off();

View File

@ -3,7 +3,7 @@ public class Skill_EatSnack : ProjectileBase
public override void Set(ProjectileData _data) public override void Set(ProjectileData _data)
{ {
base.Set(_data); base.Set(_data);
var healrate = Get_DamageInfo().Damage + (IsStep(2) ? Get_AwakenData(2, 1) : 0f); var healrate = Get_DamageInfo(false, false).Damage + (IsStep(2) ? Get_AwakenData(2, 1) : 0f);
m_ProjectTileData.target.Heal(healrate); m_ProjectTileData.target.Heal(healrate);
if (IsStep(1)) m_ProjectTileData.target.Heal_MP(healrate); if (IsStep(1)) m_ProjectTileData.target.Heal_MP(healrate);

View File

@ -41,7 +41,7 @@ public class Skill_Golem : ProjectileBase
actor => actor =>
{ {
var summon = actor as SummonActor; var summon = actor as SummonActor;
var dmg = (float)Get_DamageInfo().Damage; var dmg = (float)Get_DamageInfo(false, false).Damage;
summon.Set(_data.shooter.IsEnemy(), _data.shooter, _data.LifeTime, dmg, dmg, 1); summon.Set(_data.shooter.IsEnemy(), _data.shooter, _data.LifeTime, dmg, dmg, 1);
ServerInfo.Ins.m_ServerData.Add_TitleCondition(65); // 칭호 : 골렘과 나 ServerInfo.Ins.m_ServerData.Add_TitleCondition(65); // 칭호 : 골렘과 나

View File

@ -12,7 +12,7 @@ public class Skill_Heal : ProjectileBase
_data.m_skillTypeConfigTable = table_skilltypeconfig.Ins.Get_Data_orNull(eSkillExtraType.Cure); _data.m_skillTypeConfigTable = table_skilltypeconfig.Ins.Get_Data_orNull(eSkillExtraType.Cure);
if (IsStep(1)) Set_ReduceCoolTime_byStep(1); if (IsStep(1)) Set_ReduceCoolTime_byStep(1);
m_ProjectTileData.e_SkillExtraType = IsStep(3) ? eSkillExtraType.Cure : eSkillExtraType.None; m_ProjectTileData.e_SkillExtraType = IsStep(3) ? eSkillExtraType.Cure : eSkillExtraType.None;
var healinfo = Get_DamageInfo(); var healinfo = Get_DamageInfo(false, false);
healinfo.Damage += healinfo.Damage * (IsStep(2) ? Get_AwakenData(2, 1) : 0); healinfo.Damage += healinfo.Damage * (IsStep(2) ? Get_AwakenData(2, 1) : 0);
m_ProjectTileData.target.Check_Extra(healinfo); m_ProjectTileData.target.Check_Extra(healinfo);
m_ProjectTileData.target.Heal(healinfo.Damage); m_ProjectTileData.target.Heal(healinfo.Damage);

View File

@ -3,6 +3,8 @@ using UnityEngine;
public class Skill_IceArrows : ProjectileBase public class Skill_IceArrows : ProjectileBase
{ {
[Header("공중 높이")]
public float m_height = 4f;
[Header("피해 범위")] [Header("피해 범위")]
public float m_range = 1.5f; public float m_range = 1.5f;
@ -10,10 +12,11 @@ public class Skill_IceArrows : ProjectileBase
{ {
if (!DSUtil.CheckNull(_data.target)) if (!DSUtil.CheckNull(_data.target))
{ {
_data.v3_StartPos = _data.target.Get_Center_position() + Vector3.up * 4f; _data.v3_StartPos = _data.target.Get_Center_position() + Vector3.up * m_height;
_data.eStartPos = eProjectileStartPos.Custom; _data.eStartPos = eProjectileStartPos.Custom;
_data.LookTarget = false; _data.LookTarget = false;
_data.SetSkillExtraType = false; _data.SetSkillExtraType = false;
_data.Speed = 7.5f;
base.Set(_data); base.Set(_data);
@ -28,6 +31,7 @@ public class Skill_IceArrows : ProjectileBase
if (IsStep(3)) if (IsStep(3))
_data.CC_AddVal2 = Get_AwakenData(3, 1); _data.CC_AddVal2 = Get_AwakenData(3, 1);
StartCoroutine(Co_Move_Strait(eProjectileStrait.Down));
StartCoroutine(Co_IceArrows(range)); StartCoroutine(Co_IceArrows(range));
} }
else else
@ -37,15 +41,14 @@ public class Skill_IceArrows : ProjectileBase
IEnumerator Co_IceArrows(float range) IEnumerator Co_IceArrows(float range)
{ {
yield return new WaitForSeconds(0.5f); yield return new WaitForSeconds(0.5f);
if (m_ProjectTileData.target != null) Show_HitEffect(false, null);
if (!DSUtil.CheckNull(m_ProjectTileData.target))
{ {
var enemies = Get_Enemies(m_ProjectTileData.target.transform, range); var enemies = Get_Enemies(m_ProjectTileData.target.transform, range);
for (int i = 0; i < enemies.Count; i++) for (int i = 0; i < enemies.Count; i++)
enemies[i].Get_Damage(Get_DamageInfo()); enemies[i].Get_Damage(Get_DamageInfo());
} }
SoundInfo.Ins.Play_OneShot_byDistance(eSound.s014_IceSpike, transform.position);
yield return new WaitForSeconds(9.5f); Off(true);
Off();
} }
} }