Example #1
0
    void OnTap(RunCharacter character, int remainCount)
    {
        var target = targets[remainCount];

        character.Shoot(target.transform.position);
        target.SetActive(false);
    }
Example #2
0
    protected void CharacterInit(CharacterList character, int Code)
    {
        GameData.FDefense = new float[2];
        switch (character)
        {
        case CharacterList.AirCharacter:
            AirCharacter air = new AirCharacter(Code);
            air.CharacterInit(ref GameData);
            break;

        case CharacterList.GroundCharacter:
            GroundCharacter ground = new GroundCharacter(Code);
            ground.CharacterInit(ref GameData);
            break;

        case CharacterList.StopCharacter:
            StopCharacter stop = new StopCharacter(Code);
            stop.CharacterInit(ref GameData);
            break;

        case CharacterList.PotopCharacter:
            PotopCharacter potop = new PotopCharacter(ref GameData);
            break;

        case CharacterList.RunCharacter:
            RunCharacter run = new RunCharacter(ref GameData);
            break;

        case CharacterList.PlayerCharacter:
            if (Check)
            {
                GameData.Hp = MaxHp;
            }
            else
            {
                GameData.Hp       = MaxHp = 1500;
                GameData.Speed    = 10 * 0.5f;
                GameData.Damage   = 18.5f;
                GameData.AtkSpeed = 8 / 3f;
            }
            Check = true;
            break;

        case CharacterList.Boss:
            GameData.Hp          = MaxHp = 18500;
            GameData.FDefense[0] = 15;
            GameData.FDefense[1] = 15;
            break;
        }
        MaxHp = GameData.Hp;
    }
Example #3
0
    void OnTriggerEnter(Collider other)
    {
        // Unityの挙動?コライダの判定がShift前の位置関係でEnterすることがあるので距離で弾いておく
        if (Vector3.Distance(other.transform.position, transform.position) >= StageSettings.ZLength)
        {
            return;
        }

        EventStatus = Status.Entered;
        character   = other.GetComponent <RunCharacter>();
        if (character != null)
        {
            character.OnEventEnter(this);
        }
    }
Example #4
0
    void OnTriggerExit(Collider other)
    {
        if (other == null)
        {
            return;
        }
        if (character == null)
        {
            return;
        }
        if (EventStatus != Status.Entered)
        {
            return;
        }

        if (WillSuccess)
        {
            EventStatus = Status.Success;
            StartCoroutine(WaitForSuccess());
            if (onEventSuccess != null)
            {
                onEventSuccess(character);
            }
            character.OnEventExit();
        }
        else
        {
            EventStatus = Status.Failed;
            GameController.Instance.GameOver();
            if (onEventFailed != null)
            {
                onEventFailed(character);
            }
        }

        character = null;
    }
Example #5
0
 public void Initialize(RunCharacter runCharacter)
 {
     this.character = runCharacter;
     enabled        = true;
 }
Example #6
0
 public void Select(int index, GameObject parent)
 {
     RunCharacter = FieldRoot.InstantiateTo <RunCharacter>(parent, prefabs[index]);
 }
Example #7
0
 void OnFailed(RunCharacter character)
 {
 }
Example #8
0
 void OnSuccess(RunCharacter character)
 {
     character.Jump();
 }
Example #9
0
 void OnSuccess(RunCharacter character)
 {
     wall.SetActive(false);
 }
Example #10
0
 public void Initialize(RunCharacter runCharacter)
 {
     this.runCharacter = runCharacter;
     Construct();
 }