예제 #1
0
    int characterNumber;     //what my character number is

    // Use this for initialization
    void Start()
    {
        spriteRenderer  = this.GetComponent <SpriteRenderer> ();
        motionState     = CharacterMotionState.Idle;                             //current state is idle
        characterNumber = GetComponent <CharacterController> ().CharacterNumber; //get my character number
        hpSlider        = this.GetComponentInChildren <UISlider>();
    }
예제 #2
0
 public void IdleMotion(int number)
 {
     //change sprite to idle by photonview
     if (Game.Instance.gameScene.SelectedCharacter == number && this.GetComponent <PhotonView>().isMine)
     {
         motionState           = CharacterMotionState.Idle;
         spriteRenderer.sprite = IdleSprite;
     }
     else if (Game.Instance.gameScene.OppSelectedCharacter == number && !this.GetComponent <PhotonView>().isMine)
     {
         this.GetComponent <SpriteRenderer>().sprite = IdleSprite;;
     }
 }
예제 #3
0
        /// <inheritdoc />
        public Character()
        {
            _motionState = new CharacterMotionState(this);

            RunService.Service.Heartbeat.Connect(Update);
            InputService.Service.InputBegan.Connect(OnInputBegan);
            InputService.Service.InputEnded.Connect(OnInputEnded);

            _walkSpeed    = 16;
            CapsuleRadius = 2;
            CapsuleHeight = 5;

            RebuildRigidBody();
            Died = new Signal(this);
            Changed.Connect(OnChanged);
        }
예제 #4
0
    public void SternMotion(int number)
    {
        if (Game.Instance.gameScene.SelectedCharacter == characterNumber && this.GetComponent <PhotonView>().isMine)
        {
            Debug.Log("mine");
            motionState           = CharacterMotionState.Stern;
            spriteRenderer.sprite = SternSprite;
        }

        else if (Game.Instance.gameScene.OppSelectedCharacter == characterNumber && !this.GetComponent <PhotonView>().isMine)
        {
            Debug.Log("testasdfsadf");
            this.motionState = CharacterMotionState.Stern;
            this.GetComponent <SpriteRenderer> ().sprite = SternSprite;
        }
    }
예제 #5
0
    public void ThrowMotion(int number)
    {
        //change sprite to throwmotion by photonview
        if (Game.Instance.gameScene.SelectedCharacter == characterNumber && this.GetComponent <PhotonView>().isMine)
        {
            motionState           = CharacterMotionState.Throw;
            spriteRenderer.sprite = ThrowSprite;
        }
        else if (Game.Instance.gameScene.OppSelectedCharacter == characterNumber && !this.GetComponent <PhotonView>().isMine)
        {
            this.GetComponent <SpriteRenderer>().sprite = ThrowSprite;
        }

        /*motionState = CharacterMotionState.Throw;
         * spriteRenderer.sprite = ThrowSprite;*/
    }
예제 #6
0
    public void ThrowReadyMotion(int number)
    {
        //change sprite to throwready by photonview
        if (Game.Instance.gameScene.SelectedCharacter == number && this.GetComponent <PhotonView>().isMine)
        {
            motionState           = CharacterMotionState.Ready;
            spriteRenderer.sprite = ThrowReadySprite;
        }
        else if (!this.GetComponent <PhotonView>().isMine&& Game.Instance.gameScene.OppSelectedCharacter == number)
        {
            //	Debug.Log (number + " safsadf");
            this.GetComponent <SpriteRenderer>().sprite = ThrowReadySprite;
        }

        /*motionState = CharacterMotionState.Ready;
        *  spriteRenderer.sprite = ThrowReadySprite;*/
    }
예제 #7
0
 private void OnCollisionEnter2D(Collision2D other)
 {
     if (other.transform.tag == "Bullet" && other.transform.GetComponent <Bullet>().ThrowType == SideType.Opp && Type == SideType.Opp)
     {
         Physics2D.IgnoreCollision(GetComponent <Collider2D> (), other.transform.GetComponent <Collider2D> ());
     }
     else if (other.transform.tag == "Bullet" && other.transform.GetComponent <Bullet>().ThrowType == SideType.Opp)
     {
         /*if (other.transform.GetComponent<Rigidbody2D> ().velocity.x < 0.1f) {
          *      Destroy (other.gameObject); //if bullet is too slow destroy bullet
          *      return;
          * }*/
         Debug.Log("hit by opp");
         if (other.transform.GetComponent <Bullet>().Skill == CatSkill.Stern)
         {
             //GetComponent<PhotonView> ().RPC ("SternMotion", PhotonTargets.All, this.characterNumber);
             this.motionState           = CharacterMotionState.Stern;
             this.spriteRenderer.sprite = SternSprite;
         }
         float damage = other.transform.GetComponent <Bullet> ().Damage;
         Destroy(other.gameObject);
         //GetComponent<PhotonView>().RPC("SetHpBar",PhotonTargets.All, damage);
         SetHpBar(damage);
     }
     else if (other.transform.tag == "Bullet" && other.transform.GetComponent <Bullet>().ThrowType == SideType.Mine)
     {
         if (this.SternSprite.name.ToString().StartsWith("Opp"))
         {
             //Debug.Log ("hit by me");
             if (other.transform.GetComponent <Bullet>().Skill == CatSkill.Stern)
             {
                 //GetComponent<PhotonView> ().RPC ("SternMotion", PhotonTargets.All, this.characterNumber);
                 this.motionState = CharacterMotionState.Stern;
                 GetComponent <SpriteRenderer>().sprite = SternSprite;
             }
             float damage = other.transform.GetComponent <Bullet> ().Damage;
             Destroy(other.gameObject);
             //GetComponent<PhotonView>().RPC("SetHpBar",PhotonTargets.All, damage);
             SetHpBar(damage);
         }
     }
     else if (other.transform.tag == "Bullet" && other.transform.GetComponent <Bullet>().ThrowType == SideType.Mine)
     {
         Physics2D.IgnoreCollision(GetComponent <Collider2D> (), other.transform.GetComponent <Collider2D> ());
     }
 }