void AddPlayerMoveSpeed() { if (IsRestartMove && MoveCameraByPath.IsMovePlayer) { if (Time.realtimeSinceStartup - PlayerRestartTime <= 2f) { if (RigObj.isKinematic) { RigObj.isKinematic = false; } RigObj.AddForce(PlayerTran.forward * PlayerThrottleForce * Time.deltaTime); } else { IsRestartMove = false; if (GlobalData.GetInstance().gameMode == GameMode.SoloMode) { WaterwheelPlayerCtrl.GetInstance().SetcurrentEnginePower(PlayerCurrentEnginePower); } else { WaterwheelPlayerNetCtrl.GetInstance().SetcurrentEnginePower(PlayerCurrentEnginePower); } PlayerThrottleForce = 0f; PlayerCurrentEnginePower = 0f; } } }
void CheckPlayerDis() { if (PlayerTran == null) { if (GlobalData.GetInstance().gameMode == GameMode.SoloMode) { PlayerTran = WaterwheelPlayerCtrl.GetInstance().transform; } else { PlayerTran = WaterwheelPlayerNetCtrl.GetInstance().transform; } return; } Vector3 vecA = PlayerTran.position; Vector3 vecB = CloseTran.position; vecA.y = vecB.y = 0f; float dis = Vector3.Distance(vecA, vecB); if (dis <= 10f) { StopCheckPlayerPos(); return; } }
void CheckPlayerForwardVal() { if (PlayerTran == null) { return; } if (Mathf.Abs(PlayerTran.forward.y) < 0.8f) { TimeCheckForwardVal = Time.realtimeSinceStartup; return; } if (Time.realtimeSinceStartup - TimeCheckForwardVal > 3f) { if (GlobalData.GetInstance().gameMode == GameMode.OnlineMode) { WaterwheelPlayerNetCtrl.GetInstance().ResetPlayerPos(); } else { WaterwheelPlayerCtrl.GetInstance().ResetPlayerPos(); } } }
public void FindPlayerTran() { if (PlayerTran == null) { if (GlobalData.GetInstance().gameMode == GameMode.OnlineMode) { if (WaterwheelPlayerNetCtrl.GetInstance() != null) { PlayerTran = WaterwheelPlayerNetCtrl.GetInstance().transform; if (PlayerTran != null) { SetScreenWaterPos(WaterwheelPlayerNetCtrl.GetInstance().ScreenWaterParticle.localPosition); } } } else { if (WaterwheelPlayerCtrl.GetInstance() != null) { PlayerTran = WaterwheelPlayerCtrl.GetInstance().transform; if (PlayerTran != null) { SetScreenWaterPos(WaterwheelPlayerCtrl.GetInstance().ScreenWaterParticle.localPosition); } } } return; } }
public void ShootedByPlayer(int key) { if (IsDeadNpc) { return; } if (IsFireNpc) { WaterwheelPlayerCtrl.GetInstance().AddKillFireNpcNum(); } if (key == 0 || (key == 1 && !StartBtCtrl.GetInstanceP2().CheckIsActivePlayer())) { //XingXingCtrl.GetInstance().AddStarNum(); WaterwheelCameraCtrl.GetInstance().SpawnPlayerNengLiangLiZi(ZaiTiNpcTran.position); } NpcMoveCtrl npcScript = ChuanTran.GetComponent <NpcMoveCtrl>(); npcScript.OnZaiTiNpcDead(); /*if (AudioHitNpc != null) { * AudioListCtrl.PlayAudio(AudioHitNpc); * }*/ PlayNpcAudio(AudioHitNpcObj); OnHitWaterwheelPlayer(); IsDeadNpc = true; }
public void MoveNengLiangQuanToEnd(DaoJuTypeIndex val) { if (IsMoveToEnd) { RecordDJType = val; return; } IsMoveToEnd = true; if (EndTran == null) { if (GlobalData.GetInstance().gameMode == GameMode.SoloMode) { EndTran = WaterwheelPlayerCtrl.GetInstance().HuanYingFuObj.transform; } else { EndTran = WaterwheelPlayerNetCtrl.GetInstance().GetHuanYingFuTeXiaoTran(); } StartTran = Camera.main.transform; } TimeNengLiangQuan = Time.realtimeSinceStartup; NengLiangQuanTran.position = StartTran.position; gameObject.SetActive(true); StartCoroutine(UpdateNengLiangQuanPosToEnd(val)); }
public void SetCameraPointInfo() { if (GlobalData.GetInstance().gameMode == GameMode.SoloMode) { WaterwheelPlayerCtrl aimObjScripte = WaterwheelPlayerCtrl.GetInstance(); if (aimObjScripte == null) { return; } mCamPoint_first = aimObjScripte.GetCamPointFirst(); mCamPoint_right = aimObjScripte.GetCamPointRight(); mCamPoint_forward = aimObjScripte.GetCamPointForward(); CamPointUp = aimObjScripte.GetCamPointUp(); } else { WaterwheelPlayerNetCtrl aimObjNetScripte = WaterwheelPlayerNetCtrl.GetInstance(); if (aimObjNetScripte == null) { return; } mCamPoint_first = aimObjNetScripte.GetCamPointFirst(); mCamPoint_right = aimObjNetScripte.GetCamPointRight(); mCamPoint_forward = aimObjNetScripte.GetCamPointForward(); CamPointUp = aimObjNetScripte.GetCamPointUp(); } }
public void SetPlayerBoxColliderState(bool isActive) { if (GlobalData.GetInstance().gameMode == GameMode.SoloMode) { WaterwheelPlayerCtrl.GetInstance().SetPlayerBoxColliderState(isActive); } else { WaterwheelPlayerNetCtrl.GetInstance().SetPlayerBoxColliderState(isActive); } }
public void DelayClosePlayerBoxCollider() { if (GlobalData.GetInstance().gameMode == GameMode.SoloMode) { WaterwheelPlayerCtrl.GetInstance().SetPlayerBoxColliderState(false); } else { WaterwheelPlayerNetCtrl.GetInstance().SetPlayerBoxColliderState(false); } }
IEnumerator UpdateNengLiangQuanPosToEnd(DaoJuTypeIndex val) { while (true) { Vector3 posEnd = EndTran.position; Vector3 posStart = NengLiangQuanTran.position; if (Vector3.Distance(posEnd, posStart) < 0.5f) { IsMoveToEnd = false; gameObject.SetActive(false); if (GlobalData.GetInstance().gameMode == GameMode.SoloMode) { switch (val) { case DaoJuTypeIndex.shenXingState: WaterwheelPlayerCtrl.GetInstance().ActiveShenXingState(); //Player ShenXingState NengLiangTiaoCtrl.GetInStance().StartPlayNengLiangTiao(); if (RecordDJType == DaoJuTypeIndex.huanYingFu) { WaterwheelPlayerCtrl.GetInstance().ActiveHuanYingFuState(); } break; case DaoJuTypeIndex.huanYingFu: WaterwheelPlayerCtrl.GetInstance().ActiveHuanYingFuState(); if (RecordDJType == DaoJuTypeIndex.shenXingState) { WaterwheelPlayerCtrl.GetInstance().ActiveShenXingState(); //Player ShenXingState NengLiangTiaoCtrl.GetInStance().StartPlayNengLiangTiao(); } break; } } else { switch (val) { case DaoJuTypeIndex.huanYingFu: WaterwheelPlayerNetCtrl.GetInstance().ActiveHuanYingFuState(); break; } } RecordDJType = DaoJuTypeIndex.NULL; break; } Vector3 forwardVal = posEnd - posStart; forwardVal = forwardVal.normalized; Vector3 pos = forwardVal * MvSpeed + posStart; NengLiangQuanTran.position = pos; yield return(new WaitForSeconds(0.03f)); } }
public static void HandlePlayerCloseShenXingState() { if (GlobalData.GetInstance().gameMode == GameMode.SoloMode) { WaterwheelPlayerCtrl.GetInstance().ShouldCloseShenXingState(); } else { WaterwheelPlayerNetCtrl.GetInstance().ShouldCloseShenXingState(); } }
public static void HandlePlayerOutPubuEvent() { float power = 2000f; if (GlobalData.GetInstance().gameMode == GameMode.SoloMode) { WaterwheelPlayerCtrl.GetInstance().SetcurrentEnginePower(power); } else { WaterwheelPlayerNetCtrl.GetInstance().SetcurrentEnginePower(power); } }
public static void HandlePlayerCloseHuanYingFu() { float power = 0f; if (GlobalData.GetInstance().gameMode == GameMode.SoloMode) { WaterwheelPlayerCtrl.GetInstance().SetcurrentEnginePower(power); } else { WaterwheelPlayerNetCtrl.GetInstance().SetcurrentEnginePower(power); } }
public void setAimPlayerInfo() { WaterwheelPlayerCtrl aimObjScripte = WaterwheelPlayerCtrl.GetInstance(); if (aimObjScripte == null) { return; } smoothPer = 1f; AimPoint = aimObjScripte.GetCamAimPoint(); CamPoint_back = aimObjScripte.GetCamPointBackFar(); CamPointBackNear = aimObjScripte.GetCamPointBackNear(); BackPointParent = CamPoint_back.parent; BackLocalPos = CamPoint_back.localPosition; }
// Use this for initialization void Awake() { if (NPC_Type == NPC_STATE.BOSS_NPC || NPC_Type == NPC_STATE.ZAI_TI_NPC) { } else { NPC_Type = NPC_STATE.ZAI_TI_NPC; } ZaiTiNpcTran = transform; ChuanTran = ZaiTiNpcTran.parent; //LocalPosOffset = Vector3.Scale(ZaiTiNpcTran.localPosition, ChuanTran.localScale); //LocalPosOffset = ZaiTiNpcTran.localPosition; //ZaiTiNpcTran.parent = GameCtrlXK.MissionCleanup; WaterwheelPlayer = WaterwheelPlayerCtrl.GetInstance().transform; AnimatorNpc = GetComponent <Animator>(); if (BuWaWaObj != null) { BuWaWaObj.SetActive(false); Rigidbody rigObj = BuWaWaObj.GetComponent <Rigidbody> (); if (rigObj == null) { rigObj.name = "null"; } } NpcMoveScript = ZaiTiNpcTran.parent.GetComponent <NpcMoveCtrl>(); if (!IsDiLeiNpc) { RandomDoRootAction(); } else if (!NpcMoveScript.IsDanCheLvNpc) { IsDoFireAction = true; } BuWaWaPowerVal = NpcMoveScript.BuWaWaPowerVal; IsTeShuZiDanHaiDao = NpcMoveScript.IsTeShuZiDanHaiDao; /*if (IsTeShuZiDanHaiDao) { * NpcSimpleBulletObj.SetActive(false); * }*/ ResetActionInfo(); }
void MakePlayerBackToPath() { HiddenDirWrong(); if (!StartBtCtrl.GetInstanceP1().CheckIsActivePlayer()) { return; } if (GlobalData.GetInstance().gameMode == GameMode.SoloMode) { WaterwheelPlayerCtrl.GetInstance().ResetPlayerPos(); //Reset Player pos } else { WaterwheelPlayerNetCtrl.GetInstance().ResetPlayerPos(); //Reset Player pos } }
// Update is called once per frame void Update() { float dis = Vector3.Distance(LiZiTran.position, AimTran.position); if (dis <= 0.5f || Time.realtimeSinceStartup - TimeSpawn > 8f) { XingXingCtrl.GetInstance().AddStarNum(); Destroy(gameObject); return; } Vector3 forwardVal = AimTran.position - LiZiTran.position; float valSpeed = WaterwheelPlayerCtrl.GetInstance().GetMoveSpeed(); valSpeed = (valSpeed / (3.6f * 30)) + MvSpeed; Vector3 mvPos = forwardVal.normalized * valSpeed; LiZiTran.position += mvPos; }
IEnumerator UpdateNengLiangTiao() { while (true) { Offset += Speed; if (Offset >= NengLiangEndVal || IsStopNengLiangTeXiao) { IsStartPlay = false; gameObject.SetActive(false); ChuanNengLiangGTX.SetActive(false); NengLiangBeiJing.SetActive(true); NengLiangLiZiTXCtrl.GetInstance().MoveLiZiToPathStart(); NengLiangQuanCtrl.GetInstance().MoveNengLiangQuanToStart(DaoJuTypeIndex.shenXingState); if (GlobalData.GetInstance().gameMode == GameMode.SoloMode) { WaterwheelPlayerCtrl.GetInstance().CloseShenXingState(); } break; } NengLiangTiao.materials[0].SetTextureOffset("_MainTex", new Vector2(Offset, 0f)); yield return(new WaitForSeconds(DTime)); } }
void setCameraPos() { if (!IsFollowPlayer) { return; } if (AimPoint == null) { return; } // if(Time.timeScale != 0f) // { // camDir = CamDir.BACK; // } float aimObjMoveSpeed = WaterwheelPlayerCtrl.GetInstance().GetMoveSpeed(); if (!bIsAimPlayer) { mCamTran.position = Vector3.Lerp(mCamTran.position, CamPoint_back.position, followSpeed); mCamTran.LookAt(AimPoint); } else { Vector3 camPos = transform.position; switch (camDir) { case CamDirPos.BACK: bool isAimBike = true; if (followSpeed < smoothVal) { followSpeed += 0.001f; if (followSpeed > smoothVal) { followSpeed = smoothVal; } camPos = Vector3.Lerp(mCamTran.position, CamPoint_back.position, followSpeed); } else { float dis = Vector3.Distance(mCamTran.position, CamPoint_back.position); if (aimObjMoveSpeed > 0f) { camPos = Vector3.Lerp(mCamTran.position, CamPoint_back.position, smoothPer * smoothVal); if (aimObjMoveSpeed < 5 && Time.timeScale == 1f) { isAimBike = false; camPos = transform.position; CamPoint_back.parent = null; } else if (CamPoint_back.parent == null) { CamPoint_back.parent = BackPointParent; CamPoint_back.localPosition = BackLocalPos; } } else { if (dis > 0.1f) { camPos = Vector3.Lerp(mCamTran.position, CamPoint_back.position, smoothVal); } else { isAimBike = false; camPos = transform.position; } } } if (!CameraShake.GetInstance().CheckCamForwardHit()) { mCamTran.position = camPos; } if (isAimBike) { mCamTran.LookAt(AimPoint); } break; } } }
public void OnDamage(float unitTime) { if (PlayerNetScript != null) { if (PlayerNetScript == WaterwheelPlayerNetCtrl.GetInstance()) { return; } PlayerNetScript.SetActivePlayerGunWaterObj(1); } if (IsDeadObj) { return; } CountDamage++; if (unitTime * CountDamage >= DamageTime) { IsDeadObj = true; if (GlobalData.GetInstance().gameMode == GameMode.SoloMode) { NpcMoveCtrl npcScript = gameObject.GetComponent <NpcMoveCtrl>(); ZaiTiNpcCtrl npcZaiTiScript = gameObject.GetComponent <ZaiTiNpcCtrl>(); if (npcScript != null || npcZaiTiScript != null) { if (npcZaiTiScript != null) { npcZaiTiScript.ShootedByPlayer(0); PlayerAutoFire.AddPlayerShootNpcNum(); } else { if (npcScript.NPC_Type == NPC_STATE.BOSS_NPC || npcScript.NPC_Type == NPC_STATE.ZAI_TI_NPC) { return; } else { npcScript.ShootedByPlayer(); PlayerAutoFire.AddPlayerShootNpcNum(); } } } else { WaterwheelPlayerCtrl.GetInstance().ShootingDeadObj(gameObject); } } else { if (PlayerNetScript != null) { ResetDamageInfo(); PlayerNetScript.ActiveXuanYunState(); //ScreenLog.Log("ActiveXuanYunState -> name "+gameObject.name); } else { switch (tag) { case "DianDaoFuObj": case "DingShenFuObj": case "HuanWeiFuObj": case "HuanYingFuObj": case "JuLiFuObj": if (Time.realtimeSinceStartup - TimeDaoJuJiHuoVal < 1f) { return; } TimeDaoJuJiHuoVal = Time.realtimeSinceStartup; break; } WaterwheelPlayerNetCtrl.GetInstance().ShootingDeadObj(gameObject); } } } }
// Use this for initialization void Start() { _Instance = this; pcvr.DongGanState = 1; PlayerZhuanXiangVal = GameCtrlXK.PlayerZhuanXiangPTVal; if (IsTestShootCartoon) { return; } if (HuanYingFuObj == null) { Debug.LogError("HuanYingFuObj is null"); HuanYingFuObj.name = "null"; } else { HuanYingFuObj.SetActive(false); } PlayerTran = transform; rigObj = GetComponent <Rigidbody>(); if (GetComponent <Animator>() != null) { Debug.LogWarning("Player Animator should be remove"); PlayerTran = null; PlayerTran.name = "null"; } AutoFireScript = GetComponent <PlayerAutoFire>(); ScreenWaterParticle.gameObject.SetActive(false); ChuanShenScript = GetComponentInChildren <ChuanShenCtrl>(); ChuanLunZiScript = GetComponentInChildren <ChuanLunZiCtrl>(); ZhuJiaoNanScript = GetComponentInChildren <ZhuJiaoNan>(); mGameTime = 1000; SetCamAimInfo(); CreatePlayerNeedObj(); AiPathCtrlTran = GameCtrlXK.GetInstance().AiPathCtrlTran.GetChild(0); AutoFireScript.SetPathKeyState(AiPathCtrlTran.GetComponent <AiPathCtrl>()); AimMarkTran = AiPathCtrlTran.GetChild(0); mBakeTimePointPos = AimMarkTran.position; mBakeTimePointRot = AimMarkTran.forward; AutoFireScript.SetPlayerPreMark(AimMarkTran); CreateFlyNpcAimCube(); if (GameCtrlXK.GetInstance().PlayerMarkTest != null) { AiPathCtrlTran = GameCtrlXK.GetInstance().PlayerMarkTest.parent; AutoFireScript.SetPathKeyState(AiPathCtrlTran.GetComponent <AiPathCtrl>()); AimMarkTran = GameCtrlXK.GetInstance().PlayerMarkTest; mBakeTimePointPos = AimMarkTran.position; mBakeTimePointRot = AimMarkTran.forward; AutoFireScript.SetPlayerPreMark(AimMarkTran); PlayerTran.position = mBakeTimePointPos; PlayerTran.forward = mBakeTimePointRot; } }