コード例 #1
0
 public Ability()
 {
     windup = new AbilityPhase ();
     main = new AbilityPhase ();
     winddown = new AbilityPhase ();
     windup.NextPhase = main;
     main.NextPhase = winddown;
 }
コード例 #2
0
 public UnitFlags Halt()
 {
     targetPos = Vector3.zero;
     current = null;
     return abilityFlags;
 }
コード例 #3
0
 internal int Start(UnitManager source, Vector3 targetPos, ref AbilityPhase current)
 {
     source.TriggerAnimation (animation);
     source.InstantiateVFX (vfx, vfxPosition, vfxRotation);
     source.PlaySFX (sfx, volume);
     foreach (SerializableEffect e in selfEffects) {
         e.Execute (source, source, targetPos);
     }
     foreach (SerializableEffect e in targetEffects) {
         e.Execute (source, null, targetPos);
     }
     current = this;
     return setFlags;
 }
コード例 #4
0
 internal int End(UnitManager source, Vector3 targetPos, ref AbilityPhase current)
 {
     if (nextPhase != null) {
         return nextPhase.Start (source, targetPos, ref current);
     } else {
         current = null;
         return 0;
     }
 }