public Sprite GetAnimFrame(eAnimDir dir, int frame) { int dirIdx = (int)dir * m_dirNb / 8; // 8 maximum number of directions if (m_dirNb == 4) { switch (dir) { case eAnimDir.Right: dirIdx = 1; break; case eAnimDir.Left: dirIdx = 3; break; case eAnimDir.Down: case eAnimDir.Down_Left: case eAnimDir.Down_Right: dirIdx = 0; break; case eAnimDir.Up: case eAnimDir.Up_Left: case eAnimDir.Up_Right: dirIdx = 2; break; } } int idx = dirIdx * m_frameNb + frame; return(idx >= 0 && idx < animSprites.Length ? animSprites[idx] : null); }
/// <summary> /// Changes the animation direction /// </summary> /// <param name="vDir"></param> public void SetAnimDirection(Vector2 vDir) { if (vDir.magnitude > Vector2.kEpsilon) { m_dir = m_dirAnimCtrl.GetAnimDirByVector(vDir); } }
protected override void Update() { eAnimDir savedAnimDir = m_animCtrl.AnimDirection; base.Update(); /* * if(m_keepAttackDirTimer > 0f) * { * m_keepAttackDirTimer -= Time.deltaTime; * m_animCtrl.AnimDirection = savedAnimDir; * } */ m_phyChar.enabled = (Vehicle == null); if (Vehicle != null) { m_animCtrl.IsPlaying = false; } else { // character mouse direction Vector3 dir = Input.mousePosition - Camera.main.WorldToScreenPoint(transform.position); if (dir.x > 0) { m_animCtrl.AnimDirection = eAnimDir.Right; } else if (dir.x < 0) { m_animCtrl.AnimDirection = eAnimDir.Left; } if (Input.GetKeyDown("r")) // mousebuttondown(0) { weaponH.Shoot(); } bool isMoving = (m_phyChar.Dir.sqrMagnitude >= 0.01); if (isMoving) { //m_phyChar.Dir.Normalize(); m_camera2DFollowBehaviour.Target = transform; } else { m_phyChar.Dir = Vector3.zero; } } int tileIdx = RpgMapHelper.GetTileIdxByPosition(transform.position); if (tileIdx != m_lastTileIdx || m_lastFogSightLength != FogSightLength) { RpgMapHelper.RemoveFogOfWarWithFade(transform.position, FogSightLength); } m_lastFogSightLength = FogSightLength; m_lastTileIdx = tileIdx; }
public Sprite GetAnimFrame(int animIdx, eAnimDir dir, int frame) { if (animIdx >= 0 && animIdx < m_anims.Count) { return(m_anims[animIdx].GetAnimFrame(dir, frame)); } return(null); }
public void SetAnimDirection(Vector2 vDir) { if (vDir.magnitude > Vector2.kEpsilon) { m_dir = m_dirAnimCtrl.GetAnimDirByVector(vDir); if (gameObject.GetComponent <PlayerController>() != null) { // PlayerCharacter.UpdateDir (m_dir); } } }
void OnPhotonSerializeView(PhotonStream stream, PhotonMessageInfo info) { if (stream.isWriting) { stream.SendNext(m_dir); } else { m_dir = (eAnimDir)stream.ReceiveNext(); } }
public Sprite GetPreviewAnimSprite(Vector2 vDir, int animIdx) { int frameIdx = (int)(Time.realtimeSinceStartup * m_fps) % m_fpa; animIdx = Mathf.Clamp(animIdx, -1, m_anims.Count); if (animIdx >= 0) { eAnimDir dir = GetAnimDirByVector(vDir); return(m_anims[animIdx].GetAnimFrame(dir, frameIdx)); } else { return(null); } }
protected override void Update() { eAnimDir savedAnimDir = m_animCtrl[0].AnimDirection; base.Update(); bool isMoving = (m_phyChar.Dir.sqrMagnitude >= 0.01); if (isMoving) { //m_phyChar.Dir.Normalize(); m_camera2DFollowBehaviour.Target = transform; } else { m_phyChar.Dir = Vector3.zero; } }
protected override void Update() { eAnimDir savedAnimDir = m_animCtrl.AnimDirection; base.Update(); if (m_keepAttackDirTimer > 0f) { m_keepAttackDirTimer -= Time.deltaTime; m_animCtrl.AnimDirection = savedAnimDir; } m_phyChar.enabled = (Vehicle == null); if (Vehicle != null) { m_animCtrl.IsPlaying = false; } else { DoInputs(); bool isMoving = (m_phyChar.Dir.sqrMagnitude >= 0.01); if (isMoving) { //m_phyChar.Dir.Normalize(); m_camera2DFollowBehaviour.Target = transform; } else { m_phyChar.Dir = Vector3.zero; } } int tileIdx = RpgMapHelper.GetTileIdxByPosition(transform.position); if (tileIdx != m_lastTileIdx || m_lastFogSightLength != FogSightLength) { RpgMapHelper.RemoveFogOfWarWithFade(transform.position, FogSightLength); } m_lastFogSightLength = FogSightLength; m_lastTileIdx = tileIdx; }
public void SetAnimDirection(Vector2 vDir) { if (vDir.magnitude > Vector2.kEpsilon) { m_dir = m_dirAnimCtrl.GetAnimDirByVector(vDir); } }
public Sprite GetCurrentSprite(eAnimDir dir) { return m_dirAnimCtrl.GetAnim(m_animIdx).GetAnimFrame(dir, CurrentFrame); }
public Sprite GetCurrentSprite(eAnimDir dir) { return(m_dirAnimCtrl.GetAnim(m_animIdx).GetAnimFrame(dir, CurrentFrame)); }
public Sprite GetAnimFrame(eAnimDir dir, int frame) { int dirIdx = (int)dir * m_dirNb / 8; // 8 maximum number of directions if(m_dirNb == 4) { switch(dir) { case eAnimDir.Right: dirIdx = 1; break; case eAnimDir.Left: dirIdx = 3; break; case eAnimDir.Down: case eAnimDir.Down_Left: case eAnimDir.Down_Right: dirIdx = 0; break; case eAnimDir.Up: case eAnimDir.Up_Left: case eAnimDir.Up_Right: dirIdx = 2; break; } } int idx = dirIdx * m_frameNb + frame; return idx >= 0 && idx < animSprites.Length ? animSprites[idx] : null; }
public Sprite GetAnimFrame(int animIdx, eAnimDir dir, int frame) { if(animIdx >= 0 && animIdx < m_anims.Count) { return m_anims[animIdx].GetAnimFrame(dir, frame); } return null; }
protected override void Update() { eAnimDir savedAnimDir = m_animCtrl.AnimDirection; if (!PhotonView.isMine) { return; } base.Update(); /* * if(m_keepAttackDirTimer > 0f) * { * m_keepAttackDirTimer -= Time.deltaTime; * m_animCtrl.AnimDirection = savedAnimDir; * } */ m_phyChar.enabled = (Vehicle == null); if (Vehicle != null) { m_animCtrl.IsPlaying = false; } else { if (Input.GetAxis("Mouse ScrollWheel") != 0f) { weaponH.Change(); } // character mouse direction Vector3 dir = Input.mousePosition - Camera.main.WorldToScreenPoint(transform.position); if (!isForce) { if (dir.x > 0) { m_animCtrl.AnimDirection = eAnimDir.Right; if (currentDir == 0) { // right weaponH.reverseDirection(1); currentDir = 1; } } else if (dir.x < 0) { m_animCtrl.AnimDirection = eAnimDir.Left; if (currentDir == 1) { // left weaponH.reverseDirection(0); currentDir = 0; } } } // 재장전 if (Input.GetKey("r")) { weaponH.Reload(); } // 무기 버리기 if (Input.GetKey("g")) { weaponH.DropGun(); } if (Input.GetMouseButtonDown(0)) // mousebuttondown(0) { weaponH.Shoot(); } bool isMoving = (m_phyChar.Dir.sqrMagnitude >= 0.01); if (isMoving) { //m_phyChar.Dir.Normalize(); m_camera2DFollowBehaviour.Target = transform; } else { m_phyChar.Dir = Vector3.zero; } } int tileIdx = RpgMapHelper.GetTileIdxByPosition(transform.position); if (tileIdx != m_lastTileIdx || m_lastFogSightLength != FogSightLength) { RpgMapHelper.RemoveFogOfWarWithFade(transform.position, FogSightLength); } m_lastFogSightLength = FogSightLength; m_lastTileIdx = tileIdx; }