///<summary>互斥动作中攻击部分的处理</summary> void huchi_action_gongji() { if (Input.GetKeyDown(KeyCode.Mouse0)) //按下鼠标左键 { if (wuqi_number == 1) //一号武器 { if (action_ani_number < action_ani_name[action_ani_arraynumber].Length) { if (mouse0_keytime - action_ani_lasttime > action_ani_doingtime[action_ani_arraynumber][max(action_ani_number - 1, 0)] || action_ani_number == 0) { action_ani_lasttime = Time.fixedTime; if (action_ani_number - 1 >= 0) { ani.SetBool(action_ani_name[action_ani_arraynumber][action_ani_number - 1], false); } ani.SetBool(action_ani_name[action_ani_arraynumber][action_ani_number], true); action_ani_number++; action_ani_doing = true; trailingmesh_1.setVisual(); trailingmesh_2.setVisual(); } } } if (wuqi_number == 3) //三号武器 { if (action_ani_number < action_ani_name[action_ani_arraynumber].Length) { if (mouse0_keytime - action_ani_lasttime > action_ani_doingtime[action_ani_arraynumber][max(action_ani_number - 1, 0)] || action_ani_number == 0) { action_ani_lasttime = Time.fixedTime; if (action_ani_number - 1 >= 0) { ani.SetBool(action_ani_name[action_ani_arraynumber][action_ani_number - 1], false); } ani.SetBool(action_ani_name[action_ani_arraynumber][action_ani_number], true); action_ani_number++; action_ani_doing = true; // trailingmesh_1.setVisual(); // trailingmesh_2.setVisual(); } } } if (wuqi_number == 4) //四号武器 { if (action_ani_number < action_ani_name[action_ani_arraynumber].Length) { if (mouse0_keytime - action_ani_lasttime > action_ani_doingtime[action_ani_arraynumber][max(action_ani_number - 1, 0)] || action_ani_number == 0) { action_ani_lasttime = Time.fixedTime; if (action_ani_number - 1 >= 0) { ani.SetBool(action_ani_name[action_ani_arraynumber][action_ani_number - 1], false); attackSystem.set_AttackObject_number(4); } else { attackSystem.set_AttackObject_number(3); } ani.SetBool(action_ani_name[action_ani_arraynumber][action_ani_number], true); action_ani_number++; action_ani_doing = true; } } } } if (action_ani_doing) //当互斥动画进行时 { if (Time.fixedTime - action_ani_lasttime < action_ani_doingtime[action_ani_arraynumber][action_ani_number - 1]) { if (wuqi_number == 1) //一号武器的动作效果 { transform.Translate(Vector3.forward * speed * Time.deltaTime); } if (wuqi_number == 3) //三号武器的动作效果 { // transform.Translate(Vector3.forward*speed*2.5f*Time.deltaTime); if (!is_onFloor) { transform.Translate(Vector3.up * -g_inScene * Time.deltaTime); } } if (wuqi_number == 4) //四号武器的动作效果 { if (action_ani_number == 1) { transform.Translate(Vector3.forward * speed * 2f * Time.deltaTime); } transform.Translate(Vector3.forward * speed * 0.5f * Time.deltaTime); } } if (wuqi_number == 1) //一号武器的攻击效果 { if (Time.fixedTime - action_ani_lasttime >= action_ani_doingtime[action_ani_arraynumber][action_ani_number - 1] && Time.fixedTime - action_ani_lasttime <= action_ani_doingtime[action_ani_arraynumber][action_ani_number - 1] + 0.01f) { attackSystem.set_Attack_flag(true); //创建或现实攻击用物体 } } if (wuqi_number == 3) //三号武器的攻击效果 { if (Time.fixedTime - action_ani_lasttime >= action_ani_doingtime[action_ani_arraynumber][action_ani_number - 1] - 0.4f && Time.fixedTime - action_ani_lasttime <= action_ani_doingtime[action_ani_arraynumber][action_ani_number - 1] - 0.39f) { attackSystem.set_Attack_flag(true); //创建或现实攻击用物体 } } if (wuqi_number == 4) //四号武器的攻击效果 { if (Time.fixedTime - action_ani_lasttime >= action_ani_doingtime[action_ani_arraynumber][action_ani_number - 1] && Time.fixedTime - action_ani_lasttime <= action_ani_doingtime[action_ani_arraynumber][action_ani_number - 1] + 0.01f) { attackSystem.set_Attack_flag(true); //创建或现实攻击用物体 } } if (Time.fixedTime - action_ani_lasttime > action_ani_delaytime[action_ani_arraynumber][action_ani_number - 1]) //倒计时 { ani.SetBool(action_ani_name[action_ani_arraynumber][action_ani_number - 1], false); ani.SetBool("defult", true); action_ani_number = 0; action_ani_doing = false; trailingmesh_1.setUnVisual(); trailingmesh_2.setUnVisual(); } setWASDandSpaceDefult(); //将WASD和空格相关的动画设置为默认状态 } else { WASD_and_Space_Down(); //按下WASD和空格键时的反应 } }
///<summary>互斥动作中攻击部分的处理</summary> void huchi_action_gongji() { if (mouse0_downing) //按下鼠标左键 { if (wuqi_number == 1) //一号武器 { if (action_ani_number < action_ani_name[action_ani_arraynumber].Length) { if (mouse0_keytime - action_ani_lasttime > action_ani_doingtime[action_ani_arraynumber][max(action_ani_number - 1, 0)] || action_ani_number == 0) { action_ani_lasttime = Time.fixedTime; if (action_ani_number - 1 >= 0) { ani.SetBool(action_ani_name[action_ani_arraynumber][action_ani_number - 1], false); } ani.SetBool(action_ani_name[action_ani_arraynumber][action_ani_number], true); action_ani_number++; action_ani_doing = true; trailingmesh.setVisual(); } } } if (wuqi_number == 3) //三号武器 { if (action_ani_number < action_ani_name[action_ani_arraynumber].Length) { if (mouse0_keytime - action_ani_lasttime > action_ani_doingtime[action_ani_arraynumber][max(action_ani_number - 1, 0)] || action_ani_number == 0) { action_ani_lasttime = Time.fixedTime; if (action_ani_number - 1 >= 0) { ani.SetBool(action_ani_name[action_ani_arraynumber][action_ani_number - 1], false); } ani.SetBool(action_ani_name[action_ani_arraynumber][action_ani_number], true); action_ani_number++; action_ani_doing = true; trailingmesh.setVisual(); } } } } if (action_ani_doing) //当互斥动画进行时 { // Debug.Log("wuqi_number:"+wuqi_number); if (Time.fixedTime - action_ani_lasttime < action_ani_doingtime[action_ani_arraynumber][action_ani_number - 1]) { if (wuqi_number == 1) //一号武器的动作效果 { transform.Translate(Vector3.forward * speed * Time.deltaTime); } if (wuqi_number == 3) //三号武器的动作效果 { transform.Translate(Vector3.forward * speed * 3.5f * Time.deltaTime); // if(!is_onFloor) // { // transform.Translate(Vector3.up*0.5f*-g_inScene*Time.deltaTime); // } } } if (wuqi_number == 1) //一号武器的攻击效果 { if (Time.fixedTime - action_ani_lasttime >= action_ani_doingtime[action_ani_arraynumber][action_ani_number - 1] / 2 && Time.fixedTime - action_ani_lasttime <= action_ani_doingtime[action_ani_arraynumber][action_ani_number - 1] / 2 + 0.01f) { attackSystem.set_Attack_flag(true); //创建或现实攻击用物体 } } if (wuqi_number == 3) //三号武器的攻击效果 { if (Time.fixedTime - action_ani_lasttime <= 0.05f) { attackSystem.set_Attack_flag(true); //创建或现实攻击用物体 } } if (Time.fixedTime - action_ani_lasttime > action_ani_delaytime[action_ani_arraynumber][action_ani_number - 1]) //倒计时 { ani.SetBool(action_ani_name[action_ani_arraynumber][action_ani_number - 1], false); ani.SetBool("defult", true); action_ani_number = 0; action_ani_doing = false; trailingmesh.setUnVisual(); } setWASDandSpaceDefult(); //将WASD和空格相关的动画设置为默认状态 } else { WASD_and_Space_Down(); //按下WASD和空格键时的反应 } }