コード例 #1
0
 void Start()
 {
     m_PlayerMovement      = GetComponent <PlayerMovement>();
     m_PlayerStance        = GetComponent <PlayerStance>();
     m_PlayerCombatHandler = GetComponent <PlayerCombatHandler>();
     m_SkillHandler        = GetComponent <SkillHandler>();
 }
コード例 #2
0
 // Start is called before the first frame update
 void Start()
 {
     MaxLifeAmount = lifeAmount;
     combatHandler = GetComponent <PlayerCombatHandler>();
     //uiLifeBar = GameObject.Find("IngameUICanvas").transform.Find("lifeBar/front").gameObject;
     animator = GetComponent <Animator>();
 }
コード例 #3
0
ファイル: RopeArrow.cs プロジェクト: LonelyElf/Devout
    void initRope()
    {
        CombatHandler       ch   = _weapon.GetOwner();
        PlayerCombatHandler mpch = (PlayerCombatHandler)ch;

        if (mpch.RopeSlotStart == null)
        {
            GameObject go = PhotonNetwork.Instantiate("Rope_05", ch.transform.position, Quaternion.identity, 0);
            _rh             = go.GetComponent <RopeHandler> ();
            ch.MyRope       = _rh;
            _rh.Owner       = ch;
            _rh.StartTarget = mpch.transform;
//			_rh.StartAttachPoint = mpch.RopeTiePoint;
            _rh.SetAttachPoint(RopeHandler.ATTACH_SIDE.START, RopeHandler.ATTACH_TYPE.CHARACTER, mpch.GetComponent <PhotonView> ().viewID);

            _rh.EndTarget = transform;
//			_rh.EndAttachPoint = transform;
            _rh.SetAttachPoint(RopeHandler.ATTACH_SIDE.END, RopeHandler.ATTACH_TYPE.OTHER, GetComponent <PhotonView> ().viewID);
            mpch.RopeSlotStart = _rh;
        }
        else
        {
            _rh             = mpch.RopeSlotStart;
            _rh.StartTarget = transform;
//			_rh.StartAttachPoint = transform;
            _rh.SetAttachPoint(RopeHandler.ATTACH_SIDE.START, RopeHandler.ATTACH_TYPE.OTHER, GetComponent <PhotonView> ().viewID);

            mpch.RopeSlotStart = null;
            _rh.IsSetup        = false;
        }
    }
コード例 #4
0
ファイル: PlayerStance.cs プロジェクト: Eclmist/Aether
 void Start()
 {
     m_PlayerMovement      = GetComponent <PlayerMovement>();
     m_PlayerCombatHandler = GetComponent <PlayerCombatHandler>();
     m_PlayerAnimation     = GetComponent <PlayerAnimation>();
     SetWeaponActive();
 }
コード例 #5
0
 void Start()
 {
     AetherInput.GetPlayerActions().Jump.performed += JumpInputCallback;
     AetherInput.GetPlayerActions().Dodge.performed += DodgeInputCallback;
     m_CharacterController = GetComponent <CharacterController>();
     m_PlayerStance        = GetComponent <PlayerStance>();
     m_PlayerCombatHandler = GetComponent <PlayerCombatHandler>();
 }
コード例 #6
0
 /// <summary>
 /// Updates the player equipped weapon in case of a inventory change
 /// </summary>
 /// <param name="weapon">Weapon to equip</param>
 public void UpdateWeapon()
 {
     if (CompareTag("Player"))
     {
         Debug.Log("Updating!");
         PlayerCombatHandler handler = GetComponent <PlayerCombatHandler>();
         handler.WeaponEquipped = (Weapon)inventory[handler.actualWeapon];
     }
     //Make enemies etc handler case
 }
コード例 #7
0
 public PlayerCharacter() : base()
 {
     controller = new PlayerCombatHandler(this);
     input      = new PlayerInputComponent();
     Movement   = new PlayerMovementComponent(this);
     SetToTile(TileMapManager.Instance.CurrentMap.GetTile((int)TileMapManager.Instance.CurrentMap.mapSize.x / 2, (int)TileMapManager.Instance.CurrentMap.mapSize.y / 2));
     Stats.GetHealth().Initialise(this);
     //Stats.GetHealth().
     CameraController.instance.target = Graphics.entity.transform;
     //IEntity.isSelected = true;
 }
コード例 #8
0
    private void Awake()
    {
        // Initialize player components
        this.animator      = this.GetComponentInChildren <PlayerAnimator> ();
        this.combatHandler = this.GetComponent <PlayerCombatHandler> ();
        this.health        = this.GetComponentInChildren <Health> ();

        this.animator.initialize_components(this);
        this.combatHandler.initialize_components(this);
        this.health.initialize_components(this.soHealth, this);
    }
コード例 #9
0
    // Use this for initialization
    void Start()
    {
        //		if (photonView == null || photonView.isMine) {
        if (photonView == null || photonView.isMine)
        {
            _playerCombatHandler = GetComponent <PlayerCombatHandler> ();
        }

        //dev
        if (GetComponent <DevPlayerAIBehavior> () != null || PhotonNetwork.offlineMode)
        {
            _playerCombatHandler = GetComponent <PlayerCombatHandler> ();
        }
    }
コード例 #10
0
    private void Start()
    {
        m_Player = GetComponent <Player>();
        m_PlayerNetworkObject   = m_Player.networkObject;
        m_PlayerMovement        = GetComponent <PlayerMovement>();
        m_PlayerAnimation       = GetComponent <PlayerAnimation>();
        m_HealthHandler         = GetComponent <HealthHandler>();
        m_SkillHandler          = GetComponent <SkillHandler>();
        m_PlayerStance          = GetComponent <PlayerStance>();
        m_PlayerCombatHandler   = GetComponent <PlayerCombatHandler>();
        m_PlayerAnimationLookat = GetComponentInChildren <PlayerAnimationLookat>();

        // Make sure animator exists
        Debug.Assert(m_Animator != null, "Animator should not be null");
    }
コード例 #11
0
    private void Start()
    {
        myRigi = GetComponent <Rigidbody>();

        myTransform = transform;

        networkedPlayer = GetComponent <NetworkedPlayerController>();
        combatHandler   = GetComponent <PlayerCombatHandler>();
        Debug.Log(" PLAYER CONTROLLER : " + networkedPlayer.networkObject.IsOwner);

        if (networkedPlayer.isLocalOwner)
        {
            myCam        = FindObjectOfType <CinemachineFreeLook>();
            myCam.Follow = transform.Find("CamFollow");
            myCam.LookAt = transform;
        }
    }
コード例 #12
0
    /// <summary>
    /// Assists position. In other words,
    /// Find the closest target to be hit & moves to a position to better ensure hit.
    /// </summary>
    /// <param name="seconds">Seconds.</param>
    protected void assistPosition(float seconds)
    {
        //how close does an enemy need to be for this to be activated
        float positionValidDistance = 3f;
        //move position that is this far from the target
        float distanceFromTarget = 2f;
        PlayerCombatHandler pch  = _weapon.GetOwner() as PlayerCombatHandler;

        //find close enemy
        //		if (EnemyAIHandler.EnemyList.Count > 0) {
        if (CombatHandler.GET_ENEMIES(pch.GetTeam(), true).Count > 0)
        {
            Transform ownerTransform = _weapon.GetOwner().transform;
            Vector3   camForward     = Vector3.Scale(CameraController.CC.CombatCamera.transform.forward, new Vector3(1, 0, 1)).normalized;
            Vector3   searchPos      = ownerTransform.position + camForward;

            //if an enemy is close to valid distance, assist position
//			if (EnemyAIHandler.GetClosestEnemyDistance (searchPos) < positionValidDistance) {
            if (pch.GetClosestEnemyDistance(searchPos) < positionValidDistance)
            {
                CombatHandler closestEnemy = pch.GetClosestEnemy(searchPos);
                //direction from target to this character
                Vector3 direction = ownerTransform.position - closestEnemy.transform.position;
                direction = new Vector3(direction.x, 0f, direction.z);
                direction = direction.normalized * distanceFromTarget;

                //position a certain distance(distanceFromTarget) from the target
                direction = closestEnemy.transform.position + direction;

                //move towards that position
                StartCoroutine(MathHelper.IELerpRBPositionOverTime(ownerTransform.GetComponent <Rigidbody> (), ownerTransform.position, direction, seconds));

//				//dev
//				GameObject cube = GameObject.CreatePrimitive(PrimitiveType.Cube);
//				cube.transform.position = direction;
//				Debug.Break ();
//				Quaternion toRotation = Quaternion.LookRotation (direction);
//				StartCoroutine (MathHelper.IELerpRotationOverTime (ownerTransform, ownerTransform.rotation, toRotation, seconds));
            }
        }
    }
コード例 #13
0
    protected override void setHealth(int newHealth)
    {
        if (_photonView.isMine)
        {
            PhotonNetwork.player.SetCustomProperties(new ExitGames.Client.Photon.Hashtable()
            {
                {
                    RoomLevelHelper.CUSTOM_PLAYER_PROPERTY_HEALTH,
                    newHealth
                },
            });
        }

//		print ("Archer hit");
        if (_health > newHealth)
        {
//			print ("Archer damaged");
            //Archer falls off when attacked
            PlayerCombatHandler pch = GetComponent <PlayerCombatHandler> ();

            if (pch.GetClass() == CHARACTER_CLASS.ARCHER)
            {
                foreach (var a in pch.GetAbilities())
                {
                    if (a is AbilityCoopRide)
                    {
                        AbilityCoopRide acr = (AbilityCoopRide)a;
                        if (acr.Riding)
                        {
                            acr.FallDown();
//							print ("Archer falling down");
                        }
                        break;
                    }
                }
            }
        }

        base.setHealth(newHealth);
    }
コード例 #14
0
    /// <summary>
    /// Assists aim. In other words,
    /// Find the closest target to be hit & aims towards the target automatically.
    /// </summary>
    /// <param name="seconds">How fast does this character aim</param>
    protected void assistAim(float seconds)
    {
        float aimValidDistance  = 3f;
        PlayerCombatHandler pch = _weapon.GetOwner() as PlayerCombatHandler;

//		_targetFound = false;
        //find close enemy
//		if (EnemyAIHandler.EnemyList.Count > 0) {
        if (CombatHandler.GET_ENEMIES(pch.GetTeam(), true).Count > 0)
        {
            Transform ownerTransform = _weapon.GetOwner().transform;
            Vector3   camForward     = Vector3.Scale(CameraController.CC.CombatCamera.transform.forward, new Vector3(1, 0, 1)).normalized;
            Vector3   searchPos      = ownerTransform.position + camForward;

            //if an enemy is close to valid distance, use aimAssist
            if (pch == null)
            {
                Debug.LogWarning("WARNING : Playercharacter must have PlayerCombatHandler");
            }
            else
            {
                if (pch.GetClosestEnemyDistance(searchPos) < aimValidDistance)
                {
                    CombatHandler closestEnemy = pch.GetClosestEnemy(searchPos);
//					EnemyAIHandler closeEnemey = EnemyAIHandler.GetClosestEnemy (searchPos);
//				_targetPos = closeEnemey.transform.position;
                    Vector3 direction = closestEnemy.transform.position - ownerTransform.position;
                    direction = new Vector3(direction.x, 0f, direction.z);
                    Quaternion toRotation = Quaternion.LookRotation(direction);
                    StartCoroutine(MathHelper.IELerpRotationOverTime(ownerTransform, ownerTransform.rotation, toRotation, seconds));
//				_targetFound = true;
                }
//			else {
//				print ("Not close enough, target : " + EnemyAIHandler.GetClosestEnemy (searchPos).name + ", distance : " + EnemyAIHandler.GetClosestEnemyDistance (searchPos));
//			}
            }
        }
    }