public IBox AddBox(t_MapObjectData BoxData, uint nlefttime) { if (BoxData == null) { return(null); } //Engine.Utility.Log.Info("创建box{0}", BoxData.dwObjectID); IEntitySystem es = ClientGlobal.Instance().GetEntitySystem(); if (es == null) { Engine.Utility.Log.Error("严重错误:EntitySystem is null!"); return(null); } // if (es.FindBox(BoxData.qwThisID) == null) { //AddPetEntity(petdata); // 创建box //MapVector2 mapPos = MapVector2.FromCoordinate(BoxData.x, BoxData.y); Vector3 pos = new Vector3(BoxData.cur_pos.x * 0.01f, 0, -BoxData.cur_pos.y * 0.01f); // 服务器到客户端坐标转换 EntityCreateData data = RoleUtil.BuildCreateEntityData(EntityType.EntityType_Box, BoxData); IBox box = es.FindBox(BoxData.qwThisID); if (box != null) { box.UpdateProp(data); } else { box = es.CreateEntity(EntityType.EntityType_Box, data, true) as IBox; } box.SendMessage(EntityMessage.EntityCommand_SetPos, (object)pos); box.AddTrigger(new BoxOnTrigger()); return(box); } return(null); }