public static void GotoCollectObj(int collectObjID, bool bCarry = false) { KCollectMissionInfo info = KConfigFileManager.GetInstance().GetCollectInfo(collectObjID); if (info != null) { if (info.strPosition != null && info.strPosition != "0") { string[] pos = info.strPosition.Split(';'); if (pos.Length != 0) { string[] posTemp = pos[0].Split(':'); if (posTemp.Length == 3) { if (bCarry) { Carry(info.nSceneID, new Vector3(int.Parse(posTemp[0]), int.Parse(posTemp[1]), int.Parse(posTemp[2]))); } else { Vector3 vecPosition = MapUtils.GetMetreFromInt(int.Parse(posTemp[0]), int.Parse(posTemp[2]), int.Parse(posTemp[1])); Goto(info.nSceneID, vecPosition); } CollectObjLogic.GetInstance().m_bAutoCollect = true; } } } } }
public void OnAddDoodad(uint objID, int objType, int posX, int posY, RemoteTable table) { KSceneObjectType sot = KSceneObjectType.sotDoodad; KHeroObjectType hot = KHeroObjectType.hotInvalid; KDoodadType dt = (KDoodadType)objType; SceneEntity entity = CreateSceneObject(objID, sot, hot, dt, MapUtils.GetMetreFromInt(posX, posY), ConfigManager.INVALID_ID); if (dt == KDoodadType.dddCollect) { int collectID = (int)table["CollectMissionID"]; KCollectMissionInfo info = KConfigFileManager.GetInstance().GetCollectInfo(collectID); if (info == null) { Debug.Log("AddSceneObj Error Collect ID" + collectID.ToString()); } entity.collectInfo = info; entity.Init(); entity.DispatchEvent(ControllerCommand.LOAD_NAME_LABEL); entity.DispatchEvent(ControllerCommand.CHANGE_NAME, info.strName); } else if (dt == KDoodadType.dddDrop) { KDropType dType = (KDropType)(int)table["eDropType"]; int nValue = table["nDropValue"]; int nIndex = table["nDropIndex"]; entity.property.dropType = dType; entity.property.dropValue = nValue; entity.property.dropIndex = nIndex; entity.Init(); entity.DispatchEvent(ControllerCommand.LOAD_NAME_LABEL); if (dType == KDropType.dtMoney) { string strMoney = "money *" + nValue; entity.DispatchEvent(ControllerCommand.CHANGE_NAME, strMoney); } else if (dType == KDropType.dtEquip) { KTabLineEquip equipData = KConfigFileManager.GetInstance().equipTabInfos.getData(nIndex.ToString()); entity.DispatchEvent(ControllerCommand.CHANGE_NAME, equipData.Name); } else if (dType == KDropType.dtItem) { KTabLineItem itemData = KConfigFileManager.GetInstance().itemTabInfos.getData(nIndex.ToString()); entity.DispatchEvent(ControllerCommand.CHANGE_NAME, itemData.Name); } } }
public override void FixedUpdate() { if (m_bBeCollect) { KCollectMissionInfo info = KConfigFileManager.GetInstance().GetCollectInfo(m_collectID); if (info != null) { MajorPlayer player = PlayerManager.GetInstance().MajorPlayer; float timeUse = player.onlineTime - m_fCollectTime; if (timeUse < info.nNeedTime + 0.3f) { ForegroundSprite.fillAmount = timeUse / (info.nNeedTime + 0.3f); } else { CollectObjLogic.GetInstance().SendFinishCollectObj(m_collectID, CollectObjLogic.GetInstance().GetMissionIDByCollect(m_collectID)); m_bBeCollect = false; } } } }