private bool CreatePick(ObjectBase obj, ArrayList param) { if (param == null || param.Count != 1) { return(false); } if (obj == null) { return(false); } BaseScene scn = SceneManager.Instance.GetCurScene(); if (scn == null) { return(false); } PickInitParam initParam = new PickInitParam(); initParam.pick_res_id = System.Convert.ToInt32(param[0]); initParam.init_pos = obj.GetPosition(); initParam.init_dir = obj.GetDirection(); return(scn.CreateSprite(initParam) != null); }
override public bool Init(ObjectInitParam param) { PickInitParam pickParam = (PickInitParam)param; if (!DataManager.PickTable.ContainsKey(pickParam.pick_res_id)) { GameDebug.LogError("pick表中不存在ID: " + pickParam.pick_res_id); return(false); } mRes = DataManager.PickTable[pickParam.pick_res_id] as PickTableItem; mModelResID = mRes.modelId; mContent = pickParam.content; mPickType = pickParam.pick_type; mFlyType = pickParam.fly_type; mRandomPos = pickParam.random_pos; if (!base.Init(param)) { return(false); } InitProperty(); return(true); }
private void OnCrazy(bool crazy) { // MaoStageCrazyEvent e = new MaoStageCrazyEvent(); // e.Crazy = crazy; // EventSystem.Instance.PushEvent(e); if (crazy) { foreach (Vector3f pos in mSceneGoldPosition) { PickInitParam param = new PickInitParam(); param.pick_res_id = mGoldPickId2; param.init_dir = 0; param.init_pos = new UnityEngine.Vector3(pos.x, pos.y, pos.z); BaseScene scn = SceneManager.Instance.GetCurScene(); if (scn == null) { return; } scn.CreateSprite(param); } } }
private void CreateJieYao() { Vector3f pos = BaseAI.GetPosition(GetID()); if (mJieYaoPosition.Count > 0) { int index = BaseAI.Random(0, mJieYaoPosition.Count - 1); pos = mJieYaoPosition[index]; } PickInitParam param = new PickInitParam(); param.pick_res_id = mJieYaoPickId; param.init_dir = 0; param.init_pos = new UnityEngine.Vector3(pos.x, pos.y, pos.z); BaseScene scn = SceneManager.Instance.GetCurScene(); if (scn == null) { return; } scn.CreateSprite(param); }
private bool CreatePick(ObjectBase obj, respond_msg_gm respond) { if (respond == null) { return(false); } if (obj == null) { return(false); } BaseScene scn = SceneManager.Instance.GetCurScene(); if (scn == null) { return(false); } PickInitParam initParam = new PickInitParam(); initParam.pick_res_id = System.Convert.ToInt32(respond.param1); initParam.init_pos = obj.GetPosition(); initParam.init_dir = obj.GetDirection(); return(scn.CreateSprite(initParam) != null); }
private void CreateGold() { // 创建金币 pick Vector3f pos = BaseAI.GetPosition(GetID());; PickInitParam param = new PickInitParam(); param.pick_res_id = mGoldPickId1; param.init_dir = 0; param.init_pos = new UnityEngine.Vector3(pos.x, pos.y, pos.z); BaseScene scn = SceneManager.Instance.GetCurScene(); if (scn == null) { return; } scn.CreateSprite(param); }
// 生成掉落物 public static bool CreatePickInitParam(Pick.PickType picktype, int resid, int content, Vector3 pos, float dir, out List <PickInitParam> paramList, bool randomPos = false, Pick.FlyType flytype = Pick.FlyType.FLY_OUT, bool isDropBoxId = true) { paramList = new List <PickInitParam>(); if (content < 0) { return(false); } if (picktype <= Pick.PickType.INVALID || picktype >= Pick.PickType.TYPE_COUNT) { return(false); } if (isDropBoxId) { ArrayList buffList = new ArrayList(); if (DropManager.Instance.GenerateDropBox(content, out buffList)) { foreach (DropBoxItem item in buffList) { int pickres_id = item.itemid; if (picktype == Pick.PickType.ITEM) { ItemTableItem itemres = ItemManager.GetItemRes(item.itemid); if (itemres == null) { continue; } pickres_id = itemres.pickId; } for (int i = 0; i < item.itemnum; ++i) { PickInitParam initParam = new PickInitParam(); initParam.pick_type = picktype; initParam.pick_res_id = pickres_id; initParam.init_dir = dir; initParam.init_pos = pos; initParam.random_pos = randomPos; initParam.fly_type = flytype; paramList.Add(initParam); } } } } else { int pickres_id = resid; if (picktype == Pick.PickType.MONEY) { if (content < 1) { return(false); } } else if (picktype == Pick.PickType.SUPER_WEAPON) { if (!DataManager.SuperWeaponTable.ContainsKey(content)) { GameDebug.LogError("没找到超级武器 id = " + content.ToString()); return(false); } } else if (picktype == Pick.PickType.ITEM) { ItemTableItem itemres = ItemManager.GetItemRes(content); if (itemres == null) { return(false); } pickres_id = itemres.pickId; } PickInitParam initParam = new PickInitParam(); initParam.pick_type = picktype; initParam.pick_res_id = pickres_id; initParam.content = content; initParam.init_dir = dir; initParam.init_pos = pos; initParam.random_pos = randomPos; initParam.fly_type = flytype; paramList.Add(initParam); } return(true); }