펭귄 보스
This commit is contained in:
parent
22feb3b7e0
commit
1b4d303244
Binary file not shown.
|
|
@ -0,0 +1,141 @@
|
||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 9a19c4b7c7693134a98d292ef3ba8206
|
||||||
|
ModelImporter:
|
||||||
|
serializedVersion: 22200
|
||||||
|
internalIDToNameTable:
|
||||||
|
- first:
|
||||||
|
74: 7715286214788883660
|
||||||
|
second: boss_skill2
|
||||||
|
externalObjects: {}
|
||||||
|
materials:
|
||||||
|
materialImportMode: 2
|
||||||
|
materialName: 0
|
||||||
|
materialSearch: 1
|
||||||
|
materialLocation: 1
|
||||||
|
animations:
|
||||||
|
legacyGenerateAnimations: 4
|
||||||
|
bakeSimulation: 0
|
||||||
|
resampleCurves: 1
|
||||||
|
optimizeGameObjects: 0
|
||||||
|
removeConstantScaleCurves: 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: boss_skill2
|
||||||
|
takeName: Anim_Brother_Penguin@Damage
|
||||||
|
internalID: 0
|
||||||
|
firstFrame: 151
|
||||||
|
lastFrame: 160
|
||||||
|
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: 151
|
||||||
|
isReadable: 0
|
||||||
|
meshes:
|
||||||
|
lODScreenPercentages: []
|
||||||
|
globalScale: 1
|
||||||
|
meshCompression: 0
|
||||||
|
addColliders: 0
|
||||||
|
useSRGBMaterialColor: 1
|
||||||
|
sortHierarchyByName: 1
|
||||||
|
importPhysicalCameras: 1
|
||||||
|
importVisibility: 1
|
||||||
|
importBlendShapes: 1
|
||||||
|
importCameras: 1
|
||||||
|
importLights: 1
|
||||||
|
nodeNameCollisionStrategy: 0
|
||||||
|
fileIdsGeneration: 2
|
||||||
|
swapUVChannels: 0
|
||||||
|
generateSecondaryUV: 0
|
||||||
|
useFileUnits: 1
|
||||||
|
keepQuads: 0
|
||||||
|
weldVertices: 1
|
||||||
|
bakeAxisConversion: 0
|
||||||
|
preserveHierarchy: 0
|
||||||
|
skinWeightsMode: 0
|
||||||
|
maxBonesPerVertex: 4
|
||||||
|
minBoneWeight: 0.001
|
||||||
|
optimizeBones: 1
|
||||||
|
meshOptimizationFlags: -1
|
||||||
|
indexFormat: 0
|
||||||
|
secondaryUVAngleDistortion: 8
|
||||||
|
secondaryUVAreaDistortion: 15.000001
|
||||||
|
secondaryUVHardAngle: 88
|
||||||
|
secondaryUVMarginMethod: 1
|
||||||
|
secondaryUVMinLightmapResolution: 40
|
||||||
|
secondaryUVMinObjectScale: 1
|
||||||
|
secondaryUVPackMargin: 4
|
||||||
|
useFileScale: 1
|
||||||
|
strictVertexDataChecks: 0
|
||||||
|
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
|
||||||
|
importBlendShapeDeformPercent: 0
|
||||||
|
remapMaterialsIfMaterialImportModeIsNone: 1
|
||||||
|
additionalBone: 0
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
|
|
@ -55,6 +55,28 @@ AnimatorState:
|
||||||
m_MirrorParameter:
|
m_MirrorParameter:
|
||||||
m_CycleOffsetParameter:
|
m_CycleOffsetParameter:
|
||||||
m_TimeParameter:
|
m_TimeParameter:
|
||||||
|
--- !u!1101 &-2831235524619601487
|
||||||
|
AnimatorStateTransition:
|
||||||
|
m_ObjectHideFlags: 1
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_Name:
|
||||||
|
m_Conditions: []
|
||||||
|
m_DstStateMachine: {fileID: 0}
|
||||||
|
m_DstState: {fileID: 110209958}
|
||||||
|
m_Solo: 0
|
||||||
|
m_Mute: 0
|
||||||
|
m_IsExit: 0
|
||||||
|
serializedVersion: 3
|
||||||
|
m_TransitionDuration: 0.25
|
||||||
|
m_TransitionOffset: 0
|
||||||
|
m_ExitTime: 0.3333342
|
||||||
|
m_HasExitTime: 1
|
||||||
|
m_HasFixedDuration: 1
|
||||||
|
m_InterruptionSource: 0
|
||||||
|
m_OrderedInterruption: 1
|
||||||
|
m_CanTransitionToSelf: 1
|
||||||
--- !u!1101 &-2394900857822568002
|
--- !u!1101 &-2394900857822568002
|
||||||
AnimatorStateTransition:
|
AnimatorStateTransition:
|
||||||
m_ObjectHideFlags: 1
|
m_ObjectHideFlags: 1
|
||||||
|
|
@ -265,7 +287,10 @@ AnimatorStateMachine:
|
||||||
m_Position: {x: 120, y: -130, z: 0}
|
m_Position: {x: 120, y: -130, z: 0}
|
||||||
- serializedVersion: 1
|
- serializedVersion: 1
|
||||||
m_State: {fileID: -2916805882626545900}
|
m_State: {fileID: -2916805882626545900}
|
||||||
m_Position: {x: 120, y: -70, z: 0}
|
m_Position: {x: 120, y: -80, z: 0}
|
||||||
|
- serializedVersion: 1
|
||||||
|
m_State: {fileID: 7386440917468860179}
|
||||||
|
m_Position: {x: 120, y: -20, z: 0}
|
||||||
m_ChildStateMachines: []
|
m_ChildStateMachines: []
|
||||||
m_AnyStateTransitions: []
|
m_AnyStateTransitions: []
|
||||||
m_EntryTransitions: []
|
m_EntryTransitions: []
|
||||||
|
|
@ -317,3 +342,31 @@ AnimatorStateTransition:
|
||||||
m_InterruptionSource: 0
|
m_InterruptionSource: 0
|
||||||
m_OrderedInterruption: 1
|
m_OrderedInterruption: 1
|
||||||
m_CanTransitionToSelf: 1
|
m_CanTransitionToSelf: 1
|
||||||
|
--- !u!1102 &7386440917468860179
|
||||||
|
AnimatorState:
|
||||||
|
serializedVersion: 6
|
||||||
|
m_ObjectHideFlags: 1
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_Name: boss_skill2
|
||||||
|
m_Speed: 1
|
||||||
|
m_CycleOffset: 0
|
||||||
|
m_Transitions:
|
||||||
|
- {fileID: -2831235524619601487}
|
||||||
|
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: 7715286214788883660, guid: 9a19c4b7c7693134a98d292ef3ba8206,
|
||||||
|
type: 3}
|
||||||
|
m_Tag:
|
||||||
|
m_SpeedParameter:
|
||||||
|
m_MirrorParameter:
|
||||||
|
m_CycleOffsetParameter:
|
||||||
|
m_TimeParameter:
|
||||||
|
|
|
||||||
File diff suppressed because one or more lines are too long
Binary file not shown.
|
|
@ -218,6 +218,10 @@ public class Actor : MyCoroutine
|
||||||
case eCC.DEX_Mul_Up: Off_StatUpBuff(eStat.DEX); break;
|
case eCC.DEX_Mul_Up: Off_StatUpBuff(eStat.DEX); break;
|
||||||
case eCC.INT_Mul_Up: Off_StatUpBuff(eStat.INT); break;
|
case eCC.INT_Mul_Up: Off_StatUpBuff(eStat.INT); break;
|
||||||
case eCC.LUK_Mul_Up: Off_StatUpBuff(eStat.LUK); break;
|
case eCC.LUK_Mul_Up: Off_StatUpBuff(eStat.LUK); break;
|
||||||
|
case eCC.Barrier:
|
||||||
|
dic_ccData[item.Key].CCDmg = 0;
|
||||||
|
dic_CCEffect[item.Key].Off_Imm();
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,6 @@
|
||||||
using System;
|
using System;
|
||||||
using System.Collections;
|
using System.Collections;
|
||||||
|
using System.Threading;
|
||||||
using UnityEngine;
|
using UnityEngine;
|
||||||
|
|
||||||
public class Boss_BrotherPenguin : BossMobActor
|
public class Boss_BrotherPenguin : BossMobActor
|
||||||
|
|
@ -20,8 +21,13 @@ public class Boss_BrotherPenguin : BossMobActor
|
||||||
public bool Perforation_Line;
|
public bool Perforation_Line;
|
||||||
[Header("스킬2 쿨타임")]
|
[Header("스킬2 쿨타임")]
|
||||||
public float Skill2CoolTime = 20f;
|
public float Skill2CoolTime = 20f;
|
||||||
|
[Header("스킬2 보호막 지속시간")]
|
||||||
|
public float Skill2LifeTime = 12f;
|
||||||
|
[Header("스킬2 보호막 생명력 비율")]
|
||||||
|
public float Skill2BarrierRate = 0.25f;
|
||||||
|
|
||||||
SkillListTableData m_Frost = new SkillListTableData { e_SkillExtraType = eSkillExtraType.Frost, f_ExtraValue4 = 1f };
|
SkillListTableData m_Frost = new SkillListTableData { e_SkillExtraType = eSkillExtraType.Frost, f_ExtraValue4 = 1f };
|
||||||
|
SkillListTableData m_Barrier = new SkillListTableData { e_SkillExtraType = eSkillExtraType.Barrier };
|
||||||
|
|
||||||
public override void Set(MonsterTableData mobtable, Vector3 pos, Action<int> actDie, int order)
|
public override void Set(MonsterTableData mobtable, Vector3 pos, Action<int> actDie, int order)
|
||||||
{
|
{
|
||||||
|
|
@ -33,6 +39,9 @@ public class Boss_BrotherPenguin : BossMobActor
|
||||||
m_Frost.f_ExtraValue2 = Skill1AtkSpd;
|
m_Frost.f_ExtraValue2 = Skill1AtkSpd;
|
||||||
m_Frost.f_ExtraValue3 = Skill1MovSpd;
|
m_Frost.f_ExtraValue3 = Skill1MovSpd;
|
||||||
|
|
||||||
|
m_Barrier.e_SkillExtraType = eSkillExtraType.Barrier;
|
||||||
|
m_Barrier.f_ExtraValue2 = Skill2BarrierRate;
|
||||||
|
|
||||||
CoolTime_Skill1 = 1f;
|
CoolTime_Skill1 = 1f;
|
||||||
CoolTime_Skill2 = 2f;
|
CoolTime_Skill2 = 2f;
|
||||||
}
|
}
|
||||||
|
|
@ -51,8 +60,13 @@ public class Boss_BrotherPenguin : BossMobActor
|
||||||
|
|
||||||
if (UseSkillIndex == 1 && MobStatus != eMobStatus.Skill)
|
if (UseSkillIndex == 1 && MobStatus != eMobStatus.Skill)
|
||||||
StartCoroutine(Co_Skill1());
|
StartCoroutine(Co_Skill1());
|
||||||
//else if (UseSkillIndex == 2 && MobStatus != eMobStatus.Skill)
|
else if (UseSkillIndex == 2 && MobStatus != eMobStatus.Skill)
|
||||||
// StartCoroutine(Co_Skill2());
|
{
|
||||||
|
if (dic_ccData[eCC.Barrier].CCTime <= 0f)
|
||||||
|
StartCoroutine(Co_Skill2());
|
||||||
|
else
|
||||||
|
UseSkillIndex = 0;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
IEnumerator Co_Skill1()
|
IEnumerator Co_Skill1()
|
||||||
|
|
@ -87,9 +101,13 @@ public class Boss_BrotherPenguin : BossMobActor
|
||||||
Change_MobStatus(eMobStatus.Skill);
|
Change_MobStatus(eMobStatus.Skill);
|
||||||
AnimationPlay("boss_skill2");
|
AnimationPlay("boss_skill2");
|
||||||
|
|
||||||
yield return new WaitForSeconds(0.5f);
|
yield return new WaitForSeconds(0.25f);
|
||||||
|
Show_Barrier(m_Barrier, table_skilltypeconfig.Ins.Get_Data_orNull(m_Barrier.e_SkillExtraType), Skill2LifeTime);
|
||||||
|
|
||||||
|
yield return new WaitForSeconds(0.25f);
|
||||||
Check_Battle();
|
Check_Battle();
|
||||||
|
|
||||||
|
yield return new WaitForSeconds(Skill2LifeTime);
|
||||||
Init(false, true);
|
Init(false, true);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -629,18 +629,7 @@ public class MobActor : Actor
|
||||||
{
|
{
|
||||||
var conditionHP = Get_MaxHP() * temp.f_ExtraValue1;
|
var conditionHP = Get_MaxHP() * temp.f_ExtraValue1;
|
||||||
if (conditionHP >= Get_HP())
|
if (conditionHP >= Get_HP())
|
||||||
{
|
Show_Barrier(temp, skilltype, 10000);
|
||||||
dic_skill[temp] = 0;
|
|
||||||
dic_skillextra[skilltype.e_SkillExtraType] = true;
|
|
||||||
InGameInfo.Ins.Show_Effect(skilltype.e_SkillEffect, this, skilltype.e_EffectLocation, 10000,
|
|
||||||
effect =>
|
|
||||||
{
|
|
||||||
if (!dic_CCEffect.ContainsKey(eCC.Barrier))
|
|
||||||
dic_CCEffect.Add(eCC.Barrier, null);
|
|
||||||
dic_CCEffect[eCC.Barrier] = effect;
|
|
||||||
dic_ccData[eCC.Barrier].CCDmg = Get_MaxHP() * temp.f_ExtraValue2;
|
|
||||||
});
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case eSkillExtraType.Reincarnation: // 부활 체크
|
case eSkillExtraType.Reincarnation: // 부활 체크
|
||||||
|
|
@ -693,6 +682,23 @@ public class MobActor : Actor
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
protected void Show_Barrier(SkillListTableData skilldata, SkillTypeConfigTableData skilltype, float lifeTime)
|
||||||
|
{
|
||||||
|
dic_skill[skilldata] = 0;
|
||||||
|
dic_skillextra[skilltype.e_SkillExtraType] = true;
|
||||||
|
InGameInfo.Ins.Show_Effect(skilltype.e_SkillEffect, this, skilltype.e_EffectLocation, lifeTime,
|
||||||
|
effect =>
|
||||||
|
{
|
||||||
|
if (!dic_CCEffect.ContainsKey(eCC.Barrier))
|
||||||
|
dic_CCEffect.Add(eCC.Barrier, null);
|
||||||
|
dic_CCEffect[eCC.Barrier] = effect;
|
||||||
|
dic_ccData[eCC.Barrier].TimeUpdate = true;
|
||||||
|
dic_ccData[eCC.Barrier].CCTime = lifeTime;
|
||||||
|
dic_ccData[eCC.Barrier].CCDmg = Get_MaxHP() * skilldata.f_ExtraValue2;
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
Coroutine revive_co;
|
Coroutine revive_co;
|
||||||
IEnumerator Co_Revive(float revivetime, float nodmgtime, float dmg, SkillTypeConfigTableData skilltype)
|
IEnumerator Co_Revive(float revivetime, float nodmgtime, float dmg, SkillTypeConfigTableData skilltype)
|
||||||
{
|
{
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue