void Start() { if (PRC == null) { PRC = FindObjectOfType <PlayerRobotContral>(); } }
// Use this for initialization void Start() { PRC = FindObjectOfType <PlayerRobotContral>(); SR = GetComponent <SpriteRenderer>(); BC2D = GetComponent <BoxCollider2D>(); SetEnable(false); }
// Use this for initialization void Start() { EAI = GetComponent <EnemyAi>(); SR = GetComponent <SpriteRenderer>(); EAI.EC = this; Startpoint = transform.position; AiStart = true; prc = GameObject.FindObjectOfType <PlayerRobotContral>(); }
public PlayerRobot(PlayerRobotContral PRC, BaseCore core, float moveSpeed) { Core = core; MoveSpeed = moveSpeed; CurrentHp = MaxHp = core.CurrentHpPoint; CurrentMp = MaxMp = core.TotalPoint - core.CurrentHpPoint; this.PRC = PRC; SecondAction += RecoverMp; SyncHpMp(); }
//------------------------------------------------------ protected virtual void Awake() { LeftOnce = RightOnce = LeftDowning = RightDowning = LeftDownEnergy = RightDownEnergy = LeftDownUping = RightDownUping = LeftDownUpingEnergy = RightDownUpingEnergy = false; //点击 Gun_Data = new GunM(); //枪数据 //保存枪械信息 SaveGunData(); //获取角色控制类 m_playerRobotContral = m_player.GetComponent <PlayerRobotContral>(); //获取枪自身组件 m_SpriteRenderer = GetComponent <SpriteRenderer>(); //获取初始大小 m_TransformScale = transform.localScale; }
void Start() { m_CircleCollider2D = GetComponent <CircleCollider2D>(); switch (m_ProtectAimShieldType) { //玩家护盾 case ShieldType.Player: m_PlayerRobotContral = ProtectAimGameObject.GetComponent <PlayerRobotContral>(); break; //敌人护盾 case ShieldType.Enemy: m_EnemyRobotContral = ProtectAimGameObject.GetComponent <EnemyContral>(); break; } transform.parent = null; }
// Use this for initialization void Start() { EC = transform.parent.GetComponent <EnemyContral>(); PRC = FindObjectOfType <PlayerRobotContral>(); SR = GetComponent <SpriteRenderer>(); }
IEnumerator GetInfo() { yield return(new WaitForSeconds(0.5f)); while (true) { yield return(null); playerRobotContral = GameManager.Instance.PRC; m_CurrentHP = playerRobotContral._mPlayerRobot.CurrentHp; m_CurrentMP = playerRobotContral._mPlayerRobot.CurrentMp; m_CurrentMAXHP = playerRobotContral._mPlayerRobot.MaxHp; m_CurrentMAXMP = playerRobotContral._mPlayerRobot.MaxMp; MAXHPMPPercent = m_CurrentMAXHP / (m_CurrentMAXHP + m_CurrentMAXMP) * 1.0f; m_CurrentCoreElement = playerRobotContral._mPlayerRobot.Core.Element; m_CurrentLeftGunType = WeaponManager.Instance.CurrentLeftGunType; m_CurrentRightGunType = WeaponManager.Instance.RightGunType; //赋值 LeftGunPos.sprite = WeaponGuns[(int)m_CurrentLeftGunType]; if (m_CurrentRightGunType != GunType.Null) { RightGunPos.sprite = WeaponGuns[(int)m_CurrentRightGunType]; } else { RightGunPos.sprite = WeaponGuns[7]; } CoreAttribute currentCoreAttribute = CoreAttribute.Initial; switch (m_CurrentCoreElement) { case BaseCore.CoreElement.Primary: currentCoreAttribute = CoreAttribute.Initial; break; case BaseCore.CoreElement.Fire: currentCoreAttribute = CoreAttribute.Fire; break; case BaseCore.CoreElement.Amethyst: currentCoreAttribute = CoreAttribute.Amethyst; break; case BaseCore.CoreElement.Ice: currentCoreAttribute = CoreAttribute.Frozen; break; } Corepos.sprite = Cores[(int)currentCoreAttribute]; MainSlider[0].maxValue = MainSlider[1].maxValue = m_CurrentMAXMP + m_CurrentMAXHP; MainSlider[0].value = m_CurrentMAXHP; MainSlider[1].value = m_CurrentMAXMP; HPSlider.maxValue = m_CurrentMAXHP; MPSlider.maxValue = m_CurrentMAXMP; HPSlider.value = m_CurrentHP; MPSlider.value = m_CurrentMP; PartNums.text = WeaponManager.Instance.PartNums.ToString(); } }
void Start() { prc = FindObjectOfType <PlayerRobotContral>(); }
void Start() { #region 初始化(所有所有枪配对、设为不可见、所有脚本获取与配对) AllGunDic = new Dictionary <GunType, GameObject> { { GunType.AK47Gun, m_AK47Gun }, { GunType.RevolverGun, m_RevolverGun }, { GunType.ShotGun, m_ShotGun }, { GunType.RocketGun, m_RocketGun }, { GunType.AWMGun, m_AWMGun }, { GunType.Sword, m_Sword }, { GunType.Hammer, m_Hammer } }; //脚本获取------ todo 可能出错,待定 m_Ak47GunC = m_AK47Gun.GetComponent <AK47GunC>(); m_RevolverGunC = m_RevolverGun.GetComponent <RevolverGunC>(); m_ShotGunC = m_ShotGun.GetComponent <ShotGunC>(); m_RocketGunC = m_RocketGun.GetComponent <RocketGunC>(); m_AWMGunC = m_AWMGun.GetComponent <AWMGunC>(); m_SwordGunC = m_Sword.GetComponent <SwordGunC>(); m_HammerGunC = m_Hammer.GetComponent <HammerGunC>(); AllGunCDic = new Dictionary <GunType, GunC> { { GunType.AK47Gun, m_Ak47GunC }, { GunType.RevolverGun, m_RevolverGunC }, { GunType.ShotGun, m_ShotGunC }, { GunType.RocketGun, m_RocketGunC }, { GunType.AWMGun, m_AWMGunC }, { GunType.Sword, m_SwordGunC }, { GunType.Hammer, m_HammerGunC } }; //所有抢设为不可见 foreach (var keyValuePair in AllGunCDic) { keyValuePair.Value.SpriteRendererEnabled = false; } #endregion #region 初始化(当前已拥有枪【LeftGun与LeftGunType配对,RightGun与RightGunType配对】、修改枪的状态【普通or特殊】、主武器默认显示一把(Enable设置)、当前手里的武器(普通与特殊)) //当前已有武器配对 LeftGun = new GameObject[3]; GunTypePossession = new List <GunType>(); for (int i = 0; i < LeftGunType.Length; i++) { if (LeftGunType[i] == GunType.Null) { continue; } //武器初始化 GunTypePossession.Add(LeftGunType[i]); LeftGun[i] = AllGunDic[LeftGunType[i]]; AllGunCDic[LeftGunType[i]].GunState = GunState.NormalState;//修改枪的状态【普通】 AllGunCDic[LeftGunType[i]].IfGunCanUse(false); } //开始没有特殊武器 //关闭特殊武器系统 SpecialGunState = false; //RightGun = AllGunDic[RightGunType]; //AllGunCDic[RightGunType].GunState = GunState.SpecialState;//修改枪的状态【特殊】 //当前主武器默认显示第一把,并且设置Enable m_CurrentLeftGunType = LeftGunType[0]; AllGunCDic[m_CurrentLeftGunType].SpriteRendererEnabled = true;//LeftGun[m_CurrentLeftGunIndex].SetActive(true); AllGunCDic[LeftGunType[m_CurrentLeftGunIndex]].IfGunCanUse(true); AllGunDic[LeftGunType[m_CurrentLeftGunIndex]].GetComponent <BoxCollider2D>().enabled = true; //当前手的武器(普通与特殊)类型复制 m_CurrentLeftGunType = LeftGunType[m_CurrentLeftGunIndex]; //m_CurrentRightGunType = RightGunType; #endregion //获取人物控制 m_PlayerRobotContral = GameManager.Instance.PRC; CurrentWeaponPos = m_WeaponPos[5].position; }
private void Start() { PlayerControl = GameManager.Instance.PRC; #region 获取所有信息 //核心 foreach (BaseCore BC in BaseCore.CoreList) { switch (BC.Element) { case BaseCore.CoreElement.Primary: m_AllCoreType.Add(CoreAttribute.Initial); break; case BaseCore.CoreElement.Fire: m_AllCoreType.Add(CoreAttribute.Fire); break; case BaseCore.CoreElement.Amethyst: m_AllCoreType.Add(CoreAttribute.Amethyst); break; case BaseCore.CoreElement.Ice: m_AllCoreType.Add(CoreAttribute.Frozen); break; } } switch (PlayerControl._mPlayerRobot.Core.Element) { case BaseCore.CoreElement.Primary: m_CurrentCoreType = CoreAttribute.Initial; break; case BaseCore.CoreElement.Fire: m_CurrentCoreType = CoreAttribute.Fire; break; case BaseCore.CoreElement.Amethyst: m_CurrentCoreType = CoreAttribute.Amethyst; break; case BaseCore.CoreElement.Ice: m_CurrentCoreType = CoreAttribute.Frozen; break; } //m_AllCoreType当前拥有核心种类 //m_CurrentCoreType当前核心种类 //武器 WeaponManager.Instance.GetAllGunTypeAndCurrentGunType(out m_AllGunType, out m_CurrentGunType); //m_AllGunType当前拥有的武器种类 //m_CurrentGunType当前装配上的武器种类 //HPMP PlayerControl.GetCurrentAndMaxHp(out m_CurrentHP, out m_CurrentMaxHP); PlayerControl.GetCurrentAndMaxMP(out m_CurrentMP, out m_CurrentMaxMP); //m_CurrentHP, m_CurrentMP当前主角拥有的HP与MP值 //m_CurrentMaxHP, m_CurrentMaxMP当前主角最大的HP值和最大的MP值 //商店 m_PartNums = WeaponManager.Instance.PartNums; //m_PartNums零件数目 m_RocketNums = WeaponManager.Instance.RocketGunNumber; // m_RocketNums火箭筒个数 foreach (CoreAttribute CA in m_AllCoreType) { if (CA == CoreAttribute.Frozen) { m_HavingFrozenCore = true; break; } } //是否已有冰冻核心 #endregion m_AllCopyDraggingGun = new GameObject[6]; m_AllCopyDraggingCore = new GameObject[4]; #region 当前拥有的武器进行显示 for (int i = 0; i < m_AllGunType.Length; i++) { //未获得该武器 if (m_AllGunType[i] == GunType.Null) { continue; } m_AllGunShow[(int)m_AllGunType[i]].SetActive(true); } #endregion #region 当前装备的武器进行显示,装备Equipped显示 for (int i = 0; i < m_CurrentGunType.Length; i++) { //当前武器装备栏为空 if (m_CurrentGunType[i] == GunType.Null) { continue; } m_AllGunShow[(int)m_CurrentGunType[i]].transform.GetChild(2).gameObject.SetActive(true); //特殊武器 if (i == 3) { m_SpecialGun.sprite = m_AllGun[(int)m_CurrentGunType[i]]; } else { m_NormalGun[i].sprite = m_AllGun[(int)m_CurrentGunType[i]]; _GunIndex = (int)m_CurrentGunType[i]; } } #endregion #region 当前拥有的核心进行显示 foreach (CoreAttribute ca in m_AllCoreType) { m_AllCoreShow[(int)ca].SetActive(true); } #endregion #region 当前装备的核心与文字进行显示,装备Equipped显示,血管样式修改 m_CurrentCorePos.sprite = m_AllCore[(int)m_CurrentCoreType]; m_CurrentCoreTextPos.sprite = m_AllCoreText[(int)m_CurrentCoreType]; m_AllCoreShow[(int)m_CurrentCoreType].transform.GetChild(4).gameObject.SetActive(true); _coreIndex = (int)m_CurrentCoreType; #endregion #region 商店管理(零件数量) m_ifCanBuySomeThing = new bool[] { true, true, true, true, true }; foreach (GameObject go in m_CanNotBuyPos) { go.SetActive(false); } m_PartText.text = m_PartNums.ToString(); //禁止使用维修服务 if (m_PartNums < 10) { m_ifCanBuySomeThing[0] = false; //显示禁止买图片 m_CanNotBuyPos[0].SetActive(true); } //禁止买火箭 if (m_RocketNums == 1) { m_ifCanBuySomeThing[1] = false; //显示禁止买图片 m_CanNotBuyPos[1].SetActive(true); } //禁止买冰冻核心 if (m_HavingFrozenCore) { m_ifCanBuySomeThing[2] = false; //显示禁止买图片 m_CanNotBuyPos[2].SetActive(true); } #endregion #region 血条管理 m_AllCoreToBlood = new CoreToBlood[] { Initial, Fire, Amethyst, Frozen }; //------------------------------------------------------------------------ m_HPMPPos.sprite = m_AllHPMPStyle[(int)m_CurrentCoreType]; m_CurrentCoreToBlood = m_AllCoreToBlood[_coreIndex]; //当前HPMP占总值百分比 m_CurrentHPPercent = m_CurrentHP / (m_CurrentMaxHP * 1.0f); m_CurrentMPPercent = m_CurrentMP / (m_CurrentMaxMP * 1.0f); //滑块初始化 //主滑块位置比例(HP下限 / HP最大值) m_CurrentMainSliderPosPercent = (m_CurrentMaxHP - m_CurrentCoreToBlood.HPLowerNums) / (float)(m_CurrentCoreToBlood.HPUpperNums - m_CurrentCoreToBlood.HPLowerNums); MainSlider_MP.maxValue = MainSlider_HP.maxValue = m_CurrentCoreToBlood.AllBloodNums; MainSlider_MP.minValue = MainSlider_HP.minValue = 0; MainSlider_MP.value = m_CurrentMaxMP; MainSlider_HP.value = m_CurrentMaxHP; HpSilder.maxValue = MainSlider_HP.value; MpSilder.maxValue = MainSlider_MP.value; HpSilder.minValue = MpSilder.minValue = 0; HpSilder.value = m_CurrentHP; MpSilder.value = m_CurrentMP; //HPMP最大值显示 HPMaxText.text = m_CurrentMaxHP.ToString(); MPMaxText.text = m_CurrentMaxMP.ToString(); #endregion #region 钮UI管理 allUI = new GameObject[] { RepairUI, SelfInfoUI, MainMenuUI, HelpUI }; #endregion //可以修改HP最大值 CanChangeBloodHPMax = true; }