Bläddra i källkod

捡紫魂获得变身召唤次数

LAPTOP-OM1V99U2\永远de小亡灵 1 år sedan
förälder
incheckning
d441e094d9

+ 1 - 0
ActionTowerDefense/Assets/Resources/Prefab/ESpirits_Assassin.prefab

@@ -345,6 +345,7 @@ MonoBehaviour:
   maxMoveSpeed: 15
   minMoveSpeed: 10
   runSpeed: 0
+  type: 1
   searchState: 0
   attackDistance: 1.5
   maxAttackDis: 0

+ 1 - 0
ActionTowerDefense/Assets/Resources/Prefab/ESpirits_Cook.prefab

@@ -929,6 +929,7 @@ MonoBehaviour:
   maxMoveSpeed: 2
   minMoveSpeed: 1
   runSpeed: 4
+  type: 2
   searchState: 0
   attackDistance: 1.5
   maxAttackDis: 0

+ 1 - 0
ActionTowerDefense/Assets/Resources/Prefab/ESpirits_Invisible.prefab

@@ -345,6 +345,7 @@ MonoBehaviour:
   maxMoveSpeed: 12
   minMoveSpeed: 8
   runSpeed: 0
+  type: 3
   searchState: 0
   attackDistance: 10
   maxAttackDis: 0

+ 1 - 0
ActionTowerDefense/Assets/Resources/Prefab/Enemy_Arrow.prefab

@@ -1105,6 +1105,7 @@ MonoBehaviour:
   maxMoveSpeed: 12
   minMoveSpeed: 8
   runSpeed: 0
+  type: -1
   searchState: 0
   attackDistance: 10
   maxAttackDis: 15

+ 56 - 64
ActionTowerDefense/Assets/Resources/Prefab/Enemy_Giant.prefab

@@ -428,13 +428,6 @@ MonoBehaviour:
   m_Script: {fileID: 11500000, guid: 7475a7d33f657b146a4994b1e02710ad, type: 3}
   m_Name: 
   m_EditorClassIdentifier: 
-  isTran: 0
-  pc: {fileID: 0}
-  isSpirit: 0
-  HitCols:
-  - {fileID: 4480734502875862885}
-  - {fileID: 2460330936527559963}
-  cookNum: 10
   mecanim: {fileID: 7573527827155227431}
   meshRenderer: {fileID: 0}
   ani: {fileID: 3333436509305836838}
@@ -442,19 +435,29 @@ MonoBehaviour:
   rb: {fileID: 5440846222648032765}
   bodyTrans: {fileID: 6459001683917408033}
   beSearchTrigger: {fileID: 4259433079752244006}
-  beHitTrigger: {fileID: 3377671071202039733}
+  searchTrigger: {fileID: 2932762729738363159}
   bodyCollider: {fileID: 4543619153787591511}
   uiHp: {fileID: 478072938412589135}
   state: 0
+  totalHp: 100
+  hp: 0
+  isDie: 0
+  isRevive: 0
+  linked: 0
+  canNotAddForce: 0
+  canNotChangeHurt: 0
+  invincibleTime: 0
+  totalDieKeepTime: 5
+  dieKeepTime: 0
+  canHitFly: 1
+  isNonAttack: 0
   attackTime: 0
   totalAttack1Time: 3.6
   totalAttack2Time: 4
-  isNonAttack: 0
-  hptp: 0
-  isDie: 0
-  isRevive: 0
-  totalHp: 100
-  hp: 0
+  attackType: 0
+  bulletPrefab: {fileID: 0}
+  shootPos: []
+  shootTrack: 0
   attack1Infos:
   - damage: 10
     attackDir: {x: -1, y: 0, z: 0}
@@ -469,68 +472,55 @@ MonoBehaviour:
     repelValue: 10
   attackTriggers:
   - {fileID: 7729941002223262554}
-  attackType: 0
-  bulletPrefab: {fileID: 0}
-  shootPos: []
-  dieKeepTime: 0
-  totalDieKeepTime: 5
-  attackTarget: {fileID: 0}
-  shootTrack: 0
-  invincibleTime: 0
+  targetTypes: 010000000200000003000000
   targetCharacter: {fileID: 0}
+  attackTarget: {fileID: 0}
   beTargetCharacter: []
-  searchTrigger: {fileID: 2932762729738363159}
-  targetTypes: 010000000200000003000000
-  canHitFly: 1
-  linked: 0
+  isSpirit: 0
+  isTran: 0
+  pc: {fileID: 0}
+  hptp: 0
   joint: {fileID: 0}
   rope: {fileID: 0}
-  hasHpUp: 0
   beLarger: 0
-  canHitFloat: 0
-  floatProbability: 0
-  attackToFloat: 0
-  floatTimes: 0
-  hasFloatTimes: 0
-  criticalChance: 0
-  criticalMultiplier: 0
+  toLargeSize: 0
   cookEffect: {fileID: 0}
-  canMove: 1
+  attack1ShootCanTransmit: 0
+  matState: 1
+  spinee: {fileID: 0}
+  mesh: {fileID: 0}
+  mats: []
+  outlineMats:
+  - {fileID: 2100000, guid: a30e0c3d2b8bf4e43a76fc2d5b3884cd, type: 2}
+  outline1Mats:
+  - {fileID: 2100000, guid: 82f4327af6aa844459ee45d1f72de829, type: 2}
   foot: {fileID: 5440846222604650418}
   extraRiseGravity: -28.8
   extraFallGravity: -14.4
+  canMove: 1
   moveSpeed: 2
-  beRepelValue: 0
   totalBeRepelValue: 100
+  beRepelValue: 0
   weakTime: 0
   totalWeakTime: 10
-  decelerationRatio: 3
   weakHitRate: 2
+  easyToGetHit: 0.2
+  isDamageReduction: 0
+  reductionDegree: 0
+  reductionEffect: {fileID: 0}
+  decelerationRatio: 3
   comaTime: 5
   pastComaTime: 0
-  isCaughtByCook: 0
-  isBeDropped: 0
+  floatState: 0
   maxTime: 1.5
   minTime: 0.1
   maxHeight: 9
   minHeight: 4
+  floatTime: 10
   maxRotateSpeed: 20
   minRotateSpeed: 5
-  floatTime: 10
   isFloat: 0
-  dropDamage: 100
   normalFallSpeed: 10
-  rapidFallSpeed: 30
-  curFallSpeed: 0
-  floatState: 0
-  matState: 1
-  spinee: {fileID: 0}
-  mesh: {fileID: 0}
-  mats: []
-  outlineMats:
-  - {fileID: 2100000, guid: a30e0c3d2b8bf4e43a76fc2d5b3884cd, type: 2}
-  outline1Mats:
-  - {fileID: 2100000, guid: 82f4327af6aa844459ee45d1f72de829, type: 2}
   playerMe: {fileID: 0}
   playerAni: {fileID: 0}
   playerCol: {fileID: 0}
@@ -543,49 +533,51 @@ MonoBehaviour:
   playerMesh: {fileID: 0}
   playerMats: []
   playerOut: []
-  canNotChangeHurt: 0
   soulPrefab: {fileID: 1723151111827507807, guid: e2b65aa482f2f1447a4074208d72b778, type: 3}
   soulStartSpeed: 1
   isInvisible: 0
   invisibleTime: 0
   velocityAddition: 0
-  easyToGetHit: 0.2
+  haveTransmit: 0
+  transmitTime: 0
+  portalsController: {fileID: 0}
   id: 0
+  sortingOrder: 0
+  canFly: 0
+  isBack: 0
+  flyHeight: 0
+  flyUpSpeed: 10
   jumpSpeed: 10
+  maxMoveSpeed: 2
+  minMoveSpeed: 1
+  runSpeed: 0
+  type: -1
   searchState: 0
   attackDistance: 3
   maxAttackDis: 0
   minAttackDis: 0
   needToChange: 0
-  canFly: 0
-  flyHeight: 0
-  flyUpSpeed: 10
-  sortingOrder: 0
   attackRatio: 0
-  maxMoveSpeed: 2
-  minMoveSpeed: 1
-  runSpeed: 0
   dropSoul: 5
   dropSoulAngle: 90
+  aimEffect: {fileID: 0}
+  dashEffect: {fileID: 0}
   noOnSearchState: 0
   isFindingPlayer: 0
   isFindPlayer: 0
   hateDistance: 0
   distance: 0
   rushEndPos: {x: 0, y: 0, z: 0}
-  aimEffect: {fileID: 0}
   aimDistance: 0
   rushTime: 0
   rushSpeed: 0
   time: 0
   readyCD: 0
-  dashEffect: {fileID: 0}
   targetDir: {x: 0, y: 0, z: 0}
   haveDownRush: 0
   rushHaveAttack: 0
   downRushTime: 0
   finishRushTime: 0
-  isBack: 0
 --- !u!54 &5440846222648032765
 Rigidbody:
   m_ObjectHideFlags: 0

+ 56 - 64
ActionTowerDefense/Assets/Resources/Prefab/Enemy_Sword.prefab

@@ -221,13 +221,6 @@ MonoBehaviour:
   m_Script: {fileID: 11500000, guid: 7475a7d33f657b146a4994b1e02710ad, type: 3}
   m_Name: 
   m_EditorClassIdentifier: 
-  isTran: 0
-  pc: {fileID: 0}
-  isSpirit: 0
-  HitCols:
-  - {fileID: 3917432747505904452}
-  - {fileID: 4960124152152785005}
-  cookNum: 6
   mecanim: {fileID: 5617185463097218335}
   meshRenderer: {fileID: 0}
   ani: {fileID: 6496896669866891404}
@@ -235,19 +228,29 @@ MonoBehaviour:
   rb: {fileID: 2437299196472462355}
   bodyTrans: {fileID: 5075820377452290163}
   beSearchTrigger: {fileID: 6542925321707027015}
-  beHitTrigger: {fileID: 6427563181875878110}
+  searchTrigger: {fileID: 428784489592146076}
   bodyCollider: {fileID: 7970625495845499240}
   uiHp: {fileID: 5757877461832872043}
   state: 0
+  totalHp: 500
+  hp: 0
+  isDie: 0
+  isRevive: 0
+  linked: 0
+  canNotAddForce: 0
+  canNotChangeHurt: 0
+  invincibleTime: 0
+  totalDieKeepTime: 3
+  dieKeepTime: 0
+  canHitFly: 1
+  isNonAttack: 0
   attackTime: 0
   totalAttack1Time: 1.25
   totalAttack2Time: 1.8
-  isNonAttack: 0
-  hptp: 0
-  isDie: 0
-  isRevive: 0
-  totalHp: 500
-  hp: 0
+  attackType: 0
+  bulletPrefab: {fileID: 0}
+  shootPos: []
+  shootTrack: 0
   attack1Infos:
   - damage: 50
     attackDir: {x: -1, y: 0, z: 0}
@@ -262,68 +265,55 @@ MonoBehaviour:
     repelValue: 50
   attackTriggers:
   - {fileID: 2280520615464243483}
-  attackType: 0
-  bulletPrefab: {fileID: 0}
-  shootPos: []
-  dieKeepTime: 0
-  totalDieKeepTime: 3
-  attackTarget: {fileID: 0}
-  shootTrack: 0
-  invincibleTime: 0
+  targetTypes: 010000000300000002000000
   targetCharacter: {fileID: 0}
+  attackTarget: {fileID: 0}
   beTargetCharacter: []
-  searchTrigger: {fileID: 428784489592146076}
-  targetTypes: 010000000300000002000000
-  canHitFly: 1
-  linked: 0
+  isSpirit: 0
+  isTran: 0
+  pc: {fileID: 0}
+  hptp: 0
   joint: {fileID: 0}
   rope: {fileID: 0}
-  hasHpUp: 0
   beLarger: 0
-  canHitFloat: 0
-  floatProbability: 0
-  attackToFloat: 0
-  floatTimes: 0
-  hasFloatTimes: 0
-  criticalChance: 0
-  criticalMultiplier: 0
+  toLargeSize: 0
   cookEffect: {fileID: 0}
-  canMove: 1
+  attack1ShootCanTransmit: 0
+  matState: 1
+  spinee: {fileID: 0}
+  mesh: {fileID: 0}
+  mats: []
+  outlineMats:
+  - {fileID: 2100000, guid: 7d50f910288e95b4285a5fb549c94fe6, type: 2}
+  outline1Mats:
+  - {fileID: 2100000, guid: 79dada70fee9fbc49a327168481d3def, type: 2}
   foot: {fileID: 2437299196663985756}
   extraRiseGravity: -28.8
   extraFallGravity: -14.4
+  canMove: 1
   moveSpeed: 5
-  beRepelValue: 0
   totalBeRepelValue: 30
+  beRepelValue: 0
   weakTime: 0
   totalWeakTime: 10
-  decelerationRatio: 2
   weakHitRate: 2
+  easyToGetHit: 0.2
+  isDamageReduction: 0
+  reductionDegree: 0
+  reductionEffect: {fileID: 0}
+  decelerationRatio: 2
   comaTime: 5
   pastComaTime: 0
-  isCaughtByCook: 0
-  isBeDropped: 0
+  floatState: 0
   maxTime: 1.5
   minTime: 0.1
   maxHeight: 9
   minHeight: 4
+  floatTime: 10
   maxRotateSpeed: 20
   minRotateSpeed: 5
-  floatTime: 10
   isFloat: 0
-  dropDamage: 100
   normalFallSpeed: 10
-  rapidFallSpeed: 30
-  curFallSpeed: 0
-  floatState: 0
-  matState: 1
-  spinee: {fileID: 0}
-  mesh: {fileID: 0}
-  mats: []
-  outlineMats:
-  - {fileID: 2100000, guid: 7d50f910288e95b4285a5fb549c94fe6, type: 2}
-  outline1Mats:
-  - {fileID: 2100000, guid: 79dada70fee9fbc49a327168481d3def, type: 2}
   playerMe: {fileID: 0}
   playerAni: {fileID: 0}
   playerCol: {fileID: 0}
@@ -336,49 +326,51 @@ MonoBehaviour:
   playerMesh: {fileID: 0}
   playerMats: []
   playerOut: []
-  canNotChangeHurt: 0
   soulPrefab: {fileID: 1723151111827507807, guid: e2b65aa482f2f1447a4074208d72b778, type: 3}
   soulStartSpeed: 1
   isInvisible: 0
   invisibleTime: 0
   velocityAddition: 0
-  easyToGetHit: 0.2
+  haveTransmit: 0
+  transmitTime: 0
+  portalsController: {fileID: 0}
   id: 0
+  sortingOrder: 1000
+  canFly: 0
+  isBack: 0
+  flyHeight: 0
+  flyUpSpeed: 10
   jumpSpeed: 9
+  maxMoveSpeed: 6
+  minMoveSpeed: 5
+  runSpeed: 0
+  type: -1
   searchState: 0
   attackDistance: 1.5
   maxAttackDis: 0
   minAttackDis: 0
   needToChange: 0
-  canFly: 0
-  flyHeight: 0
-  flyUpSpeed: 10
-  sortingOrder: 1000
   attackRatio: 0
-  maxMoveSpeed: 6
-  minMoveSpeed: 5
-  runSpeed: 0
   dropSoul: 2
   dropSoulAngle: 90
+  aimEffect: {fileID: 0}
+  dashEffect: {fileID: 0}
   noOnSearchState: 0
   isFindingPlayer: 0
   isFindPlayer: 0
   hateDistance: 0
   distance: 0
   rushEndPos: {x: 0, y: 0, z: 0}
-  aimEffect: {fileID: 0}
   aimDistance: 0
   rushTime: 0
   rushSpeed: 0
   time: 0
   readyCD: 0
-  dashEffect: {fileID: 0}
   targetDir: {x: 0, y: 0, z: 0}
   haveDownRush: 0
   rushHaveAttack: 0
   downRushTime: 0
   finishRushTime: 0
-  isBack: 0
 --- !u!54 &2437299196472462355
 Rigidbody:
   m_ObjectHideFlags: 0

+ 54 - 65
ActionTowerDefense/Assets/Resources/Prefab/MySpirit/Spirits_Cook.prefab

@@ -719,11 +719,6 @@ MonoBehaviour:
   m_Script: {fileID: 11500000, guid: c1bedfb340186164dbac1499b49b879e, type: 3}
   m_Name: 
   m_EditorClassIdentifier: 
-  isTran: 0
-  pc: {fileID: 0}
-  isSpirit: 1
-  HitCols: []
-  cookNum: 10
   mecanim: {fileID: 7573527827155227431}
   meshRenderer: {fileID: 0}
   ani: {fileID: 3333436509305836838}
@@ -731,86 +726,83 @@ MonoBehaviour:
   rb: {fileID: 5440846222648032765}
   bodyTrans: {fileID: 6459001683917408033}
   beSearchTrigger: {fileID: 4259433079752244006}
-  beHitTrigger: {fileID: 3377671071202039733}
+  searchTrigger: {fileID: 2932762729738363159}
   bodyCollider: {fileID: 4543619153787591511}
   uiHp: {fileID: 3402650366513594425}
   state: 0
+  totalHp: 1000
+  hp: 0
+  isDie: 0
+  isRevive: 0
+  linked: 0
+  canNotAddForce: 0
+  canNotChangeHurt: 0
+  invincibleTime: 0
+  totalDieKeepTime: 1.34
+  dieKeepTime: 0
+  canHitFly: 1
+  isNonAttack: 1
   attackTime: 0
   totalAttack1Time: 0
   totalAttack2Time: 0
-  isNonAttack: 1
-  hptp: 0
-  isDie: 0
-  isRevive: 0
-  totalHp: 10000
-  hp: 0
-  attack1Infos: []
-  attack2Infos: []
-  attackTriggers:
-  - {fileID: 7729941002223262554}
   attackType: 0
   bulletPrefab: {fileID: 0}
   shootPos: []
-  dieKeepTime: 0
-  totalDieKeepTime: 1.34
-  attackTarget: {fileID: 0}
   shootTrack: 0
-  invincibleTime: 0
+  attack1Infos: []
+  attack2Infos: []
+  attackTriggers:
+  - {fileID: 7729941002223262554}
+  targetTypes: 010000000300000004000000
   targetCharacter: {fileID: 0}
+  attackTarget: {fileID: 0}
   beTargetCharacter: []
-  searchTrigger: {fileID: 2932762729738363159}
-  targetTypes: 010000000300000004000000
-  canHitFly: 1
-  linked: 0
+  isSpirit: 1
+  isTran: 0
+  pc: {fileID: 0}
+  hptp: 0
   joint: {fileID: 0}
   rope: {fileID: 0}
-  hasHpUp: 0
   beLarger: 0
-  canHitFloat: 0
-  floatProbability: 0
-  attackToFloat: 0
-  floatTimes: 0
-  hasFloatTimes: 0
-  criticalChance: 0
-  criticalMultiplier: 0
+  toLargeSize: 0
   cookEffect: {fileID: 0}
-  canMove: 0
+  attack1ShootCanTransmit: 0
+  matState: 1
+  spinee: {fileID: 0}
+  mesh: {fileID: 0}
+  mats: []
+  outlineMats:
+  - {fileID: 2100000, guid: 30969c92738eb7d4da3885e08f1ec2f0, type: 2}
+  - {fileID: 2100000, guid: 98fc94309ab120b4c83b2cebb9226222, type: 2}
+  - {fileID: 2100000, guid: 30969c92738eb7d4da3885e08f1ec2f0, type: 2}
+  outline1Mats: []
   foot: {fileID: 5440846222604650418}
   extraRiseGravity: -28.8
   extraFallGravity: -14.4
+  canMove: 0
   moveSpeed: 1
-  beRepelValue: 0
   totalBeRepelValue: 100
+  beRepelValue: 0
   weakTime: 0
   totalWeakTime: 3
-  decelerationRatio: 1
   weakHitRate: 2
+  easyToGetHit: 0.2
+  isDamageReduction: 0
+  reductionDegree: 0
+  reductionEffect: {fileID: 0}
+  decelerationRatio: 1
   comaTime: 5
   pastComaTime: 0
-  isCaughtByCook: 0
-  isBeDropped: 0
+  floatState: 0
   maxTime: 1.5
   minTime: 0.1
   maxHeight: 12
   minHeight: 7
+  floatTime: 10
   maxRotateSpeed: 10
   minRotateSpeed: 4
-  floatTime: 10
   isFloat: 0
-  dropDamage: 100
   normalFallSpeed: 10
-  rapidFallSpeed: 30
-  curFallSpeed: 0
-  floatState: 0
-  matState: 1
-  spinee: {fileID: 0}
-  mesh: {fileID: 0}
-  mats: []
-  outlineMats:
-  - {fileID: 2100000, guid: 30969c92738eb7d4da3885e08f1ec2f0, type: 2}
-  - {fileID: 2100000, guid: 98fc94309ab120b4c83b2cebb9226222, type: 2}
-  - {fileID: 2100000, guid: 30969c92738eb7d4da3885e08f1ec2f0, type: 2}
-  outline1Mats: []
   playerMe: {fileID: 0}
   playerAni: {fileID: 0}
   playerCol: {fileID: 0}
@@ -823,34 +815,31 @@ MonoBehaviour:
   playerMesh: {fileID: 0}
   playerMats: []
   playerOut: []
-  canNotChangeHurt: 0
   soulPrefab: {fileID: 0}
   soulStartSpeed: 1
   isInvisible: 0
   invisibleTime: 0
   velocityAddition: 0
-  easyToGetHit: 0.2
-  isDamageReduction: 0
-  reductionDegree: 0
-  reductionEffect: {fileID: 0}
+  haveTransmit: 0
+  transmitTime: 0
+  portalsController: {fileID: 0}
   player: {fileID: 0}
+  playerID: 0
   id: 0
   costMp: 1
   totalSummonTime: 0.5
-  searchState: 0
-  attackDistance: 0
-  maxAttackDis: 0
-  minAttackDis: 0
-  needToChange: 0
   canFly: 0
+  isBack: 0
   flyHeight: 0
   flyUpSpeed: 10
   sortingOrder: 0
-  playerID: 0
-  hasEffect: 0
-  soulCollector: {fileID: 0}
-  isBack: 0
   runSpeed: 4
+  searchState: 0
+  soulCollector: {fileID: 0}
+  attackDistance: 0
+  maxAttackDis: 0
+  minAttackDis: 0
+  needToChange: 0
 --- !u!54 &5440846222648032765
 Rigidbody:
   m_ObjectHideFlags: 0

+ 59 - 71
ActionTowerDefense/Assets/Resources/Prefab/Transfiguration/Trans_Assassin.prefab

@@ -214,13 +214,6 @@ MonoBehaviour:
   m_Script: {fileID: 11500000, guid: c1bedfb340186164dbac1499b49b879e, type: 3}
   m_Name: 
   m_EditorClassIdentifier: 
-  isTran: 1
-  pc: {fileID: 0}
-  isSpirit: 1
-  HitCols:
-  - {fileID: 6526817785665782971}
-  - {fileID: 8769150919382874379}
-  cookNum: 6
   mecanim: {fileID: 5617185463097218335}
   meshRenderer: {fileID: 0}
   ani: {fileID: 6496896669866891404}
@@ -228,19 +221,29 @@ MonoBehaviour:
   rb: {fileID: 0}
   bodyTrans: {fileID: 2730232521377132808}
   beSearchTrigger: {fileID: 1317309795988277421}
-  beHitTrigger: {fileID: 5333142802677931907}
+  searchTrigger: {fileID: 5104552355235513707}
   bodyCollider: {fileID: 8367450352918568419}
   uiHp: {fileID: 6433555643392153575}
   state: 0
+  totalHp: 1000
+  hp: 0
+  isDie: 0
+  isRevive: 0
+  linked: 0
+  canNotAddForce: 0
+  canNotChangeHurt: 0
+  invincibleTime: 0
+  totalDieKeepTime: 2
+  dieKeepTime: 0
+  canHitFly: 0
+  isNonAttack: 0
   attackTime: 0
   totalAttack1Time: 1.25
   totalAttack2Time: 1.8
-  isNonAttack: 0
-  hptp: 0
-  isDie: 0
-  isRevive: 0
-  totalHp: 1000
-  hp: 0
+  attackType: 2
+  bulletPrefab: {fileID: 0}
+  shootPos: []
+  shootTrack: 0
   attack1Infos:
   - damage: 600
     attackDir: {x: 0, y: 1, z: 0}
@@ -255,71 +258,55 @@ MonoBehaviour:
     repelValue: 50
   attackTriggers:
   - {fileID: 4347565098670608659}
-  attackType: 2
-  bulletPrefab: {fileID: 0}
-  shootPos: []
-  dieKeepTime: 0
-  totalDieKeepTime: 2
-  attackTarget: {fileID: 0}
-  shootTrack: 0
-  invincibleTime: 0
-  totalInvincibleTime: 0
+  targetTypes: 0400000005000000
   targetCharacter: {fileID: 0}
+  attackTarget: {fileID: 0}
   beTargetCharacter: []
-  searchTrigger: {fileID: 5104552355235513707}
-  targetTypes: 0400000005000000
-  canHitFly: 0
-  linked: 0
+  isSpirit: 1
+  isTran: 1
+  pc: {fileID: 0}
+  hptp: 0
   joint: {fileID: 0}
   rope: {fileID: 0}
-  hasHpUp: 0
   beLarger: 0
-  canHitFloat: 0
-  floatProbability: 0
-  attackToFloat: 0
-  floatTimes: 0
-  hasFloatTimes: 0
-  criticalChance: 0
-  criticalMultiplier: 0
-  canMove: 1
+  toLargeSize: 0
+  cookEffect: {fileID: 0}
+  attack1ShootCanTransmit: 0
+  matState: 1
+  spinee: {fileID: 0}
+  mesh: {fileID: 0}
+  mats: []
+  outlineMats:
+  - {fileID: 2100000, guid: eb0e26c1a9cf9a14799273e742b98d21, type: 2}
+  outline1Mats:
+  - {fileID: 2100000, guid: c0377aa9339c7e24b94d247d135c8875, type: 2}
   foot: {fileID: 2437299196663985756}
   extraRiseGravity: -28.8
   extraFallGravity: -14.4
+  canMove: 1
   moveSpeed: 10
-  beRepelValue: 0
   totalBeRepelValue: 100
+  beRepelValue: 0
   weakTime: 0
   totalWeakTime: 3
-  weakUpSpeed: 10
+  weakHitRate: 2
+  easyToGetHit: 0.2
+  isDamageReduction: 0
+  reductionDegree: 0
+  reductionEffect: {fileID: 0}
   decelerationRatio: 1
-  minHurtKeepTime: 0.2
-  hurtKeepTime: 0
-  hurtChangeVelocity: 1
   comaTime: 5
   pastComaTime: 0
-  isCaughtByCook: 0
-  isBeDropped: 0
+  floatState: 0
   maxTime: 1.5
   minTime: 0.1
   maxHeight: 12
   minHeight: 7
+  floatTime: 10
   maxRotateSpeed: 10
   minRotateSpeed: 4
-  floatTime: 10
   isFloat: 0
-  dropDamage: 100
   normalFallSpeed: 10
-  rapidFallSpeed: 30
-  curFallSpeed: 0
-  floatState: 0
-  matState: 1
-  spinee: {fileID: 0}
-  mesh: {fileID: 0}
-  mats: []
-  outlineMats:
-  - {fileID: 2100000, guid: eb0e26c1a9cf9a14799273e742b98d21, type: 2}
-  outline1Mats:
-  - {fileID: 2100000, guid: c0377aa9339c7e24b94d247d135c8875, type: 2}
   playerMe: {fileID: 0}
   playerAni: {fileID: 0}
   playerCol: {fileID: 0}
@@ -332,33 +319,31 @@ MonoBehaviour:
   playerMesh: {fileID: 0}
   playerMats: []
   playerOut: []
-  canNotChangeHurt: 0
   soulPrefab: {fileID: 0}
   soulStartSpeed: 1
   isInvisible: 0
   invisibleTime: 0
-  easyToGetHit: 0.2
+  velocityAddition: 0
+  haveTransmit: 0
+  transmitTime: 0
+  portalsController: {fileID: 0}
   player: {fileID: 0}
+  playerID: 0
   id: 0
   costMp: 1
   totalSummonTime: 0.5
-  searchState: 0
-  attackDistance: 1.5
-  maxAttackDis: 0
-  minAttackDis: 0
-  needToChange: 0
   canFly: 0
+  isBack: 0
   flyHeight: 0
   flyUpSpeed: 10
   sortingOrder: 1000
-  playerID: 0
-  hasEffect: 0
-  soulCollector: {fileID: 5635527809196979293}
-  isBack: 0
   runSpeed: 0
-  attributeUpEffect: {fileID: 0}
-  hasUp: 0
-  isFirst: 1
+  searchState: 0
+  soulCollector: {fileID: 5635527809196979293}
+  attackDistance: 1.5
+  maxAttackDis: 0
+  minAttackDis: 0
+  needToChange: 0
 --- !u!1 &2437299196663985757
 GameObject:
   m_ObjectHideFlags: 0
@@ -417,6 +402,8 @@ MonoBehaviour:
   m_Script: {fileID: 11500000, guid: c42213c575288a148b692aad7ab56bab, type: 3}
   m_Name: 
   m_EditorClassIdentifier: 
+  rb: {fileID: 0}
+  haveGravity: 1
   trigGroundList: []
 --- !u!1 &3811492645662986714
 GameObject:
@@ -878,6 +865,7 @@ MonoBehaviour:
   m_EditorClassIdentifier: 
   canHit: 0
   isEnemy: 0
+  isBoss: 0
   attackInfo:
     damage: 500
     attackDir: {x: 0, y: 2, z: 0}
@@ -885,10 +873,10 @@ MonoBehaviour:
     changeHurt: 1
     repelValue: 50
   beHitTriggers: []
-  offset: 2
   rushEffect: {fileID: 7473170563405908938, guid: 8ad3c225050205945b10657aa300afd6, type: 3}
   targetY: 1
   aim: {fileID: 3811492645662986714}
+  offset: 2
 --- !u!1 &6907704218149488799
 GameObject:
   m_ObjectHideFlags: 0

+ 1 - 0
ActionTowerDefense/Assets/Resources/Prefab/soul_purple.prefab

@@ -9844,6 +9844,7 @@ MonoBehaviour:
   to: {x: 0, y: 0, z: 0}
   time: 0
   Spirits_Invisible_NotFind: 0
+  isSourPurple: 1
   haveTransmit: 0
   transmitTime: 0
   portalsController: {fileID: 0}

+ 5 - 1
ActionTowerDefense/Assets/Scripts/Enemy.cs

@@ -38,6 +38,8 @@ public class Enemy : MoveCharacter
     public float maxMoveSpeed, minMoveSpeed;
     public float runSpeed;
 
+    [Header("µÐ·½Ó¢Áé")]
+    public Spirits.SpiritType type;
 
     [Header("µÐ·½µ¥Î»×é¼þ")]
     public SearchState searchState;
@@ -841,7 +843,9 @@ public class Enemy : MoveCharacter
                 angle = angle / 180 * Mathf.PI;
                 GameObject soulObj = PoolManager.Instantiate(soulPrefab, transform.position);
                 Vector3 dir = new Vector3(Mathf.Cos(angle), Mathf.Sin(angle), 0);
-                soulObj.GetComponent<Soul>().Burst(dir * soulStartSpeed);
+                Soul soul = soulObj.GetComponent<Soul>();
+                soul.Burst(dir * soulStartSpeed);
+                soul.type = (int)type;
             }
         }
         else

+ 19 - 2
ActionTowerDefense/Assets/Scripts/Soul.cs

@@ -32,9 +32,18 @@ public class Soul : MonoBehaviour
     public float transmitTime;          //´«ËÍCD
     public PortalsController portalsController;
 
+    [Header("×Ï»ê")]
+    public bool isSourPurple;           //ÊÇ·ñÊÇ×Ï»ê
+    public int type;
+    public SpiritSystem spiritSystem;
+
     private void Awake()
     {
-        SoulInMap.souls.Add(this);
+        spiritSystem = GameObject.Find("SpiritSystem").GetComponent<SpiritSystem>();
+        if (!isSourPurple)
+        {
+            SoulInMap.souls.Add(this);
+        }
     }
     public void Burst(Vector3 velocity)
     {
@@ -60,7 +69,15 @@ public class Soul : MonoBehaviour
 
     public void BeGet(int id)
     {
-        PlayersInput.instance[id].mp += addMp;
+        if (isSourPurple)
+        {
+            spiritSystem.GainNewSpirit(id, type);
+        }
+        else
+        {
+            PlayersInput.instance[id].mp += addMp;
+        }
+        
     }
 
     private void Update()

+ 27 - 3
ActionTowerDefense/Assets/Scripts/Spirits/Base_Spirits/SpiritSystem.cs

@@ -136,17 +136,26 @@ public class SpiritSystem : MonoBehaviour
         }
     }
 
-    private void GainNewSpirit(int id, int spirit)
+    public void GainNewSpirit(int id, int spirit)
     {
         switch (id)
         {
             case 0:
-                curCheckSpirit1.transform.parent.gameObject.SetActive(false);
+                //curCheckSpirit1.transform.parent.gameObject.SetActive(false);
                 if (s1 == null)
                 {
                     pc1 = PlayersInput.instance[0];
                     s1 = pc1.GetComponent<Spirits>();
                 }
+                for(int i = 0;i < 3; i++)
+                {
+                    if (s1.ownSpirits[i] == s1.TranSpirit(spirit))
+                    {
+                        s1.ultimateTimes[i] += 1;
+                        P1times.text = (s1.ultimateTimes[i]).ToString();
+                        return;
+                    }
+                }
                 s1.ownSpirits[s1.hasSpirits] = s1.TranSpirit(spirit);
                 Sprite newHead = NoneHead;
                 switch (spirit)
@@ -167,6 +176,9 @@ public class SpiritSystem : MonoBehaviour
                         break;
                 }
                 player1cards[s1.hasSpirits].sprite = newHead;
+                s1.ultimateTimes[s1.hasSpirits] = 1;
+                P1times.text = (s1.ultimateTimes[s1.hasSpirits]).ToString();
+                P1times.gameObject.SetActive(true);
                 s1.hasSpirits++;
                 if (s1.hasSpirits == 1)
                 {
@@ -175,12 +187,21 @@ public class SpiritSystem : MonoBehaviour
                 }
                 break;
             case 1:
-                curCheckSpirit2.transform.parent.gameObject.SetActive(false);
+                //curCheckSpirit2.transform.parent.gameObject.SetActive(false);
                 if (s2 == null)
                 {
                     pc2 = PlayersInput.instance[1];
                     s2 = pc2.GetComponent<Spirits>();
                 }
+                for (int i = 0; i < 3; i++)
+                {
+                    if (s2.ownSpirits[i] == s2.TranSpirit(spirit))
+                    {
+                        s2.ultimateTimes[i] += 1;
+                        P2times.text = (s2.ultimateTimes[i]).ToString();
+                        return;
+                    }
+                }
                 s2.ownSpirits[s2.hasSpirits] = s2.TranSpirit(spirit);
                 Sprite newHead2 = NoneHead;
                 switch (spirit)
@@ -201,6 +222,9 @@ public class SpiritSystem : MonoBehaviour
                         break;
                 }
                 player2cards[s2.hasSpirits].sprite = newHead2;
+                s2.ultimateTimes[s2.hasSpirits] = 1;
+                P2times.text = (s2.ultimateTimes[s2.hasSpirits]).ToString();
+                P2times.gameObject.SetActive(true);
                 s2.hasSpirits++;
                 if (s2.hasSpirits == 1)
                 {