//消息处理 private void OnMsgCreateTurret(MsgBase msgBase) { MsgCreateTurret msgCreateTurret = (MsgCreateTurret)msgBase; switch (msgCreateTurret._NO) { case 0: //Vector3 pointPos = GetTurretCreatePos(); Vector3 pointPos = new Vector3(msgCreateTurret._x, 0, msgCreateTurret._z); if (pointPos != GameTool.noUsePosition) { Debug.Log("Create a new turret"); _mutipleTypeObjectPool.AddObjectToPool <TankTurret>(_mutipleTypeObjectPool.GetObjectFromPool <TankTurret>().Init(pointPos)); } Debug.Log(Time.time - _testTime); break; case 1: break; case 2: break; case 3: break; case 4: break; } }
public override void Update() { base.Update(); if (Input.GetMouseButtonDown(0)) { Vector3 pointPos = GetTurretCreatePos(); if (pointPos != GameTool.noUsePosition) { //_mutipleTypeObjectPool.AddObjectToPool<TankTurret>(_mutipleTypeObjectPool.GetObjectFromPool // <TankTurret>().Init(pointPos)); } //_mutipleTypeObjectPool.AddObjectToPool<LaserTurret>(_mutipleTypeObjectPool.GetObjectFromPool // <LaserTurret>().Init(pointPos)); _testTime = Time.time; MsgCreateTurret msg = new MsgCreateTurret { _x = pointPos.x, _y = 0, _z = pointPos.z, _NO = 0 }; NetManager.Send(msg); } }