/* * temp:one_bomb two_bomb three_bomb save_bomb paper_plane thunder_bomb * 常规炮 双炮 散炮 疗伤炮 纸飞机 轰天雷 */ public void PlaySkill(SkillManager.SkillType temp, CharacterLogic A, AttackBaseData AA) { if (OnSkillPlay != null) { OnSkillPlay(temp, A, AA); } }
// 根据武器类型生成子弹, 角色控制器调用这里 public void spawnBullet(SkillManager.SkillType type = SkillManager.SkillType.Main) { if (type == SkillManager.SkillType.Main) { bulletManager.spawnBullet(bullet, transform.position, transform.rotation); } else if (type == SkillManager.SkillType.Second) { bulletManager.spawnBullet(secondBullet, transform.position, transform.rotation); } }
public void Attack(SkillManager.SkillType bulletType) { if (!SkillManager.isReady(bulletType)) { return; } SkillManager.stamp(bulletType); robotAnimator.SetTrigger("Attack"); spawner.spawnBullet(bulletType); }
private void ShowSkillPrompt(SkillManager.SkillType skillType) { if (GameGOW.Get().BattleMgr.m_pCurrentPlayer != _character) { return; } if (skillType == SkillManager.SkillType.Normal) { return; } if (_skillPromptMoveTweener != null) { SkillPrompt.text = GameGOW.Get().DataMgr.GetSkillINstructionDataByID(100 + (int)skillType).default_name; SkillPrompt.gameObject.SetActive(true); _skillPromptMoveTweener.Restart(); } }
// 获取是否武器已可以再次使用 public bool isReady(SkillManager.SkillType bulletType) { CDInfo cdInfo = cdInfoList[(int)bulletType]; return(Time.unscaledTime - cdInfo.timeStamp > cdInfo.cd); }
// 记录武器使用时间戳 public void stamp(SkillManager.SkillType bulletType) { cdInfoList[(int)bulletType].timeStamp = Time.unscaledTime; }