깜짝 놀래키기
This commit is contained in:
parent
5bf24cb26b
commit
8e50a763d5
Binary file not shown.
|
|
@ -0,0 +1,134 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 1127f9b78c930a448be04837caabfe57
|
||||
ModelImporter:
|
||||
serializedVersion: 20200
|
||||
internalIDToNameTable:
|
||||
- first:
|
||||
74: -779177437826517512
|
||||
second: Damage
|
||||
externalObjects: {}
|
||||
materials:
|
||||
materialImportMode: 2
|
||||
materialName: 0
|
||||
materialSearch: 1
|
||||
materialLocation: 1
|
||||
animations:
|
||||
legacyGenerateAnimations: 4
|
||||
bakeSimulation: 0
|
||||
resampleCurves: 1
|
||||
optimizeGameObjects: 0
|
||||
motionNodeName:
|
||||
rigImportErrors:
|
||||
rigImportWarnings:
|
||||
animationImportErrors:
|
||||
animationImportWarnings:
|
||||
animationRetargetingWarnings:
|
||||
animationDoRetargetingWarnings: 0
|
||||
importAnimatedCustomProperties: 0
|
||||
importConstraints: 0
|
||||
animationCompression: 1
|
||||
animationRotationError: 0.5
|
||||
animationPositionError: 0.5
|
||||
animationScaleError: 0.5
|
||||
animationWrapMode: 0
|
||||
extraExposedTransformPaths: []
|
||||
extraUserProperties: []
|
||||
clipAnimations:
|
||||
- serializedVersion: 16
|
||||
name: Damage
|
||||
takeName: Anim_Golem_Child@Damage
|
||||
internalID: 0
|
||||
firstFrame: 81
|
||||
lastFrame: 94
|
||||
wrapMode: 0
|
||||
orientationOffsetY: 0
|
||||
level: 0
|
||||
cycleOffset: 0
|
||||
loop: 0
|
||||
hasAdditiveReferencePose: 0
|
||||
loopTime: 1
|
||||
loopBlend: 0
|
||||
loopBlendOrientation: 0
|
||||
loopBlendPositionY: 0
|
||||
loopBlendPositionXZ: 0
|
||||
keepOriginalOrientation: 0
|
||||
keepOriginalPositionY: 1
|
||||
keepOriginalPositionXZ: 0
|
||||
heightFromFeet: 0
|
||||
mirror: 0
|
||||
bodyMask: 01000000010000000100000001000000010000000100000001000000010000000100000001000000010000000100000001000000
|
||||
curves: []
|
||||
events: []
|
||||
transformMask: []
|
||||
maskType: 3
|
||||
maskSource: {instanceID: 0}
|
||||
additiveReferencePoseFrame: 81
|
||||
isReadable: 0
|
||||
meshes:
|
||||
lODScreenPercentages: []
|
||||
globalScale: 1
|
||||
meshCompression: 0
|
||||
addColliders: 0
|
||||
useSRGBMaterialColor: 1
|
||||
sortHierarchyByName: 1
|
||||
importVisibility: 1
|
||||
importBlendShapes: 1
|
||||
importCameras: 1
|
||||
importLights: 1
|
||||
fileIdsGeneration: 2
|
||||
swapUVChannels: 0
|
||||
generateSecondaryUV: 0
|
||||
useFileUnits: 1
|
||||
keepQuads: 0
|
||||
weldVertices: 1
|
||||
bakeAxisConversion: 0
|
||||
preserveHierarchy: 0
|
||||
skinWeightsMode: 0
|
||||
maxBonesPerVertex: 4
|
||||
minBoneWeight: 0.001
|
||||
meshOptimizationFlags: -1
|
||||
indexFormat: 0
|
||||
secondaryUVAngleDistortion: 8
|
||||
secondaryUVAreaDistortion: 15.000001
|
||||
secondaryUVHardAngle: 88
|
||||
secondaryUVMarginMethod: 1
|
||||
secondaryUVMinLightmapResolution: 40
|
||||
secondaryUVMinObjectScale: 1
|
||||
secondaryUVPackMargin: 4
|
||||
useFileScale: 1
|
||||
tangentSpace:
|
||||
normalSmoothAngle: 60
|
||||
normalImportMode: 0
|
||||
tangentImportMode: 3
|
||||
normalCalculationMode: 4
|
||||
legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0
|
||||
blendShapeNormalImportMode: 1
|
||||
normalSmoothingSource: 0
|
||||
referencedClips: []
|
||||
importAnimation: 1
|
||||
humanDescription:
|
||||
serializedVersion: 3
|
||||
human: []
|
||||
skeleton: []
|
||||
armTwist: 0.5
|
||||
foreArmTwist: 0.5
|
||||
upperLegTwist: 0.5
|
||||
legTwist: 0.5
|
||||
armStretch: 0.05
|
||||
legStretch: 0.05
|
||||
feetSpacing: 0
|
||||
globalScale: 1
|
||||
rootMotionBoneName:
|
||||
hasTranslationDoF: 0
|
||||
hasExtraRoot: 0
|
||||
skeletonHasParents: 1
|
||||
lastHumanDescriptionAvatarSource: {instanceID: 0}
|
||||
autoGenerateAvatarMappingIfUnspecified: 1
|
||||
animationType: 2
|
||||
humanoidOversampling: 1
|
||||
avatarSetup: 0
|
||||
addHumanoidExtraRootOnlyWhenUsingAvatar: 1
|
||||
additionalBone: 0
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
|
|
@ -183,6 +183,9 @@ AnimatorStateMachine:
|
|||
- serializedVersion: 1
|
||||
m_State: {fileID: 110293690}
|
||||
m_Position: {x: 440, y: -140, z: 0}
|
||||
- serializedVersion: 1
|
||||
m_State: {fileID: 5354752314646611759}
|
||||
m_Position: {x: 130, y: -140, z: 0}
|
||||
m_ChildStateMachines: []
|
||||
m_AnyStateTransitions: []
|
||||
m_EntryTransitions: []
|
||||
|
|
@ -212,6 +215,33 @@ AnimatorStateMachine:
|
|||
m_ExitPosition: {x: 800, y: 120, z: 0}
|
||||
m_ParentStateMachinePosition: {x: 800, y: 20, z: 0}
|
||||
m_DefaultState: {fileID: 0}
|
||||
--- !u!1102 &5354752314646611759
|
||||
AnimatorState:
|
||||
serializedVersion: 6
|
||||
m_ObjectHideFlags: 1
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_Name: startlebehind
|
||||
m_Speed: 1
|
||||
m_CycleOffset: 0
|
||||
m_Transitions: []
|
||||
m_StateMachineBehaviours: []
|
||||
m_Position: {x: 50, y: 50, z: 0}
|
||||
m_IKOnFeet: 0
|
||||
m_WriteDefaultValues: 1
|
||||
m_Mirror: 0
|
||||
m_SpeedParameterActive: 0
|
||||
m_MirrorParameterActive: 0
|
||||
m_CycleOffsetParameterActive: 0
|
||||
m_TimeParameterActive: 0
|
||||
m_Motion: {fileID: -779177437826517512, guid: 1127f9b78c930a448be04837caabfe57,
|
||||
type: 3}
|
||||
m_Tag:
|
||||
m_SpeedParameter:
|
||||
m_MirrorParameter:
|
||||
m_CycleOffsetParameter:
|
||||
m_TimeParameter:
|
||||
--- !u!1101 &8638698240353951168
|
||||
AnimatorStateTransition:
|
||||
m_ObjectHideFlags: 1
|
||||
|
|
|
|||
File diff suppressed because one or more lines are too long
Binary file not shown.
|
|
@ -55,7 +55,9 @@ public class Actor : MyCoroutine
|
|||
set
|
||||
{
|
||||
_isstop = value;
|
||||
//if (IsSubRole(eSubRol.Boss)) Debug.Log("IsStop 변경 " + value);
|
||||
//if (IsSubRole(eSubRol.Boss))
|
||||
if (IsRole(eRole.PC))
|
||||
Debug.Log("IsStop 변경 " + value);
|
||||
}
|
||||
}
|
||||
public bool m_IsLockTarget { get; set; }
|
||||
|
|
@ -852,7 +854,8 @@ public class Actor : MyCoroutine
|
|||
{
|
||||
var startPos = Get_position(); // 현재 위치
|
||||
Vector3 direction = (target.Get_position() - Get_position()).normalized; // 목표와 현재 위치의 방향 벡터를 구함
|
||||
return target.Get_position() - direction * dist; // 목표 위치에서 -1f 앞 지점 계산
|
||||
var rtnPos = DSUtil.Get_RandomPos_onNavMesh(target.Get_position() - direction * dist, 0, dist);
|
||||
return rtnPos;
|
||||
}
|
||||
public float Get_ScaleSizeDist() { return transform.localScale.x > 2f ? ObjSize.z * 0.5f : 0f; }
|
||||
public ActorStatInfo Get_StatInfo() { return m_Stat; }
|
||||
|
|
|
|||
|
|
@ -1,5 +1,3 @@
|
|||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using UnityEngine;
|
||||
|
||||
public class Boss_GolemChild : BossMobActor
|
||||
|
|
|
|||
|
|
@ -7,13 +7,14 @@ public class BossMobActor : MobActor
|
|||
{
|
||||
protected GameObject go_indicator1, go_indicator2;
|
||||
protected bool CanUseSkill1, CanUseSkill2;
|
||||
protected float CoolTime_Skill1, CoolTime_Skill2;
|
||||
protected float CoolTime_PassiveSkill, CoolTime_Skill1, CoolTime_Skill2;
|
||||
protected int UseSkillIndex = 0;
|
||||
|
||||
public override void On_Regen(bool reincarnation = false, float healrate = 1)
|
||||
{
|
||||
base.On_Regen(reincarnation, healrate);
|
||||
CanUseSkill1 = CanUseSkill2 = false;
|
||||
CoolTime_PassiveSkill = 0;
|
||||
}
|
||||
|
||||
protected override void Update()
|
||||
|
|
@ -21,6 +22,7 @@ public class BossMobActor : MobActor
|
|||
base.Update();
|
||||
if (IsDead()) return;
|
||||
|
||||
Check_PassiveSkill();
|
||||
if (UseSkillIndex != 1 && CoolTime_Skill1 > 0f) CoolTime_Skill1 -= Time.deltaTime;
|
||||
if (UseSkillIndex != 2 && CoolTime_Skill2 > 0f) CoolTime_Skill2 -= Time.deltaTime;
|
||||
// 스킬 사용 결정
|
||||
|
|
@ -82,6 +84,32 @@ public class BossMobActor : MobActor
|
|||
Init(false, false);
|
||||
}
|
||||
|
||||
protected virtual void Check_PassiveSkill()
|
||||
{
|
||||
if (CoolTime_PassiveSkill > 0f) CoolTime_PassiveSkill -= Time.deltaTime;
|
||||
if (CoolTime_PassiveSkill <= 0f)
|
||||
{
|
||||
if (isTarget && m_Stat.Get_Stat(eStat.StartleBehind) > 0)
|
||||
{
|
||||
var skillData = table_skilllist.Ins.Get_Data_orNull(m_MonsterTableData.n_PassiveSkillID);
|
||||
if (Vector3.Distance(Get_position(), m_Target.Get_position()) > skillData.f_ExtraValue1)
|
||||
StartCoroutine(Co_StartleBehind(skillData));
|
||||
}
|
||||
}
|
||||
}
|
||||
IEnumerator Co_StartleBehind(SkillListTableData skillData)
|
||||
{
|
||||
CoolTime_PassiveSkill = skillData.f_ExtraValue4;
|
||||
InGameInfo.Ins.Show_Effect("Effect_Teleport", Get_position());
|
||||
AnimationPlay("startlebehind");
|
||||
|
||||
yield return new WaitForSeconds(0.5f);
|
||||
|
||||
m_Target.Stun(skillData.f_ExtraValue2, true);
|
||||
Set_Warp(Get_TeleportPostion(m_Target, -skillData.f_ExtraValue3));
|
||||
Change_MobStatus(eMobStatus.Attack);
|
||||
}
|
||||
|
||||
protected virtual float Get_Skill1Dmg() { return 1f; }
|
||||
protected virtual Vector3 Get_Skill1Pos() { return Get_CenterPositionFoward(); }
|
||||
protected virtual void Set_Skill1Projectile(ProjectileBase pb) { }
|
||||
|
|
|
|||
|
|
@ -182,7 +182,12 @@ public enum eStat
|
|||
Reduction_in_Immediate_Harvest_Cost,
|
||||
Reclaim_Used_Resources,
|
||||
|
||||
DMG_TO_HP, SkillDmg_DECREASE, BaseDmg_DECREASE, HP_REGEN_Per1Sec, ADD_ATK_FIXED,
|
||||
DMG_TO_HP,
|
||||
SkillDmg_DECREASE,
|
||||
BaseDmg_DECREASE,
|
||||
HP_REGEN_Per1Sec,
|
||||
ADD_ATK_FIXED,
|
||||
StartleBehind,
|
||||
|
||||
None
|
||||
}
|
||||
|
|
@ -234,7 +239,7 @@ public enum eSkillEnhance
|
|||
STR_Up, DEX_Up, INT_Up, LUCK_Up, ATK_SPD_Up, MOV_SPD_Up, PIERCING, Boss_Dmg, Monster_Dmg, GoldHunter, MP_Down, AttackRange_Up,
|
||||
Dmg_Decrease, Dmg_Up, CRI_Up, SkillCoolTime, PetStat_Up,
|
||||
|
||||
DMG_TO_HP, SkillDmg_DECREASE, BaseDmg_DECREASE, HP_REGEN_Per1Sec, ATK_FIXED, DMG_DECREASE,
|
||||
DMG_TO_HP, SkillDmg_DECREASE, BaseDmg_DECREASE, HP_REGEN_Per1Sec, ATK_FIXED, DMG_DECREASE, StartleBehind,
|
||||
|
||||
Newbie,
|
||||
}
|
||||
|
|
|
|||
|
|
@ -794,6 +794,7 @@ public class ActorStatInfo
|
|||
case eSkillEnhance.HP_Up: Set_Stat(true, eStat.HP_Multiplier, skilldata.f_ExtraValue1); break;
|
||||
case eSkillEnhance.ATK_FIXED: Set_Stat(true, eStat.ADD_ATK_FIXED, skilldata.f_ExtraValue1); break;
|
||||
case eSkillEnhance.DMG_DECREASE: Set_Stat(true, eStat.DMG_DECREASE, skilldata.f_ExtraValue1); break;
|
||||
case eSkillEnhance.StartleBehind: Set_Stat(true, eStat.StartleBehind, 1); break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue