/// <summary> /// 添加状态 /// </summary> /// <param name="strRoleID">角色ID</param> /// <param name="strRolePartName">角色部件名称</param> /// <param name="strClipSourceName">源名称</param> /// <param name="strKey">控制器主键</param> /// <param name="strClipName">剪辑名称</param> /// <param name="overrideController"></param> private static void AddStateTransition(string strRoleID, string strRolePartName, string strKey, string strClipSourceName, string strClipName, ref AnimatorOverrideController overrideController) { bool bPair = false; string strCliPath = "Assets/Models/Roles/" + strRoleID + "/" + strRolePartName + "@Ani/" + strRolePartName + "@" + strClipSourceName + ".FBX"; if (strClipName == "") { strClipName = strRolePartName + "@" + strKey; } else { strClipName = strRolePartName + "@" + strClipName; } //根据动画文件读取它的AnimationClip对象 Object [] obj = AssetDatabase.LoadAllAssetsAtPath(strCliPath); int nCount = obj.Length; for (int nCnt = 0; nCnt < nCount; nCnt++) { if (obj[nCnt] is AnimationClip && obj[nCnt].name == strClipName) { overrideController [strKey] = obj[nCnt] as AnimationClip; bPair = true; break; } } if (!bPair) { string strErr = "角色" + strRoleID + "的部件" + strRolePartName + "的动作" + strKey + "找不到匹配" + strClipName; //Debug.LogError(strErr); NGUIUtil.DebugLog(strErr, "red"); } }
/// <summary> /// 获取建筑数据 /// </summary> /// <param name="Type">建筑类型</param> /// <param name="Level">建筑等级</param> /// <param name="Quality">建筑品质</param> /// <param name="Star">建筑星级</param> /// <returns>建筑数据,null 获取失败</returns> private static BuildInfo GetStageBuildInfo(int id, int Level, int Quality, int Star) { //获取基础建筑信息 s_stagebuildInfo BaseInfo = GetStageBuildInfo(id); if (BaseInfo == null) { NGUIUtil.DebugLog("获取不到该类型的建筑数据:" + id); return(null); } BuildInfo Info = new BuildInfo(); Info.ID = id; Info.BuildType = BaseInfo.type; Info.Level = BaseInfo.level; Info.Quality = BaseInfo.quality; Info.StarLevel = BaseInfo.starlevel; Info.m_name = BaseInfo.name; Info.m_modeltype = BaseInfo.modeltype; Info.m_damage = BaseInfo.damage; Info.m_RoomType = (RoomType)BaseInfo.resource; Info.m_Desc = BaseInfo.description; Info.m_data0 = BaseInfo.data0; Info.m_Shape = GetShapeType(BaseInfo.shapeid); Info.m_bear = BaseInfo.bear; Info.m_wood = BaseInfo.dropwood; Info.Mana = BaseInfo.dead_mana; //计算升级,升星,升阶 数据。 CalcStageBuildInfo(BaseInfo, ref Info); //返回结果 return(Info); }
private void SetUI() { if (m_soldierInfo == null && m_buildInfo == null) { NGUIUtil.DebugLog("SummonHeroWnd 's Info is null!!!"); return; } int NeedNum = 0; int NeedCoin = 0; if (m_iWndType == 1 && m_soldierInfo != null) { SoldierM.GetUpStarNeed(m_soldierInfo.SoldierTypeID, m_soldierInfo.StarLevel, ref NeedNum, ref NeedCoin); } else if (m_iWndType == 2 && m_buildInfo != null) { buildingM.GetUpStarNeed(m_buildInfo.BuildType, m_buildInfo.StarLevel, ref NeedNum, ref NeedCoin); } SetDialogLable(NeedCoin); if (NeedCoin > UserDC.GetCoin()) { MyHead.BtnYES.SetState(UIButtonColor.State.Disabled, true); MyHead.BtnYES.isEnabled = false; } }
/// <summary> /// 创建 3D 角色 /// </summary> void Create3DSoldier() { if (m_soldierInfo == null) { return; } if (m_role == null) { m_role = new Role(); } m_role.CreateSkin(MyHead.SoldierPos, m_soldierInfo.m_modeltype, m_soldierInfo.m_name, AnimatorState.Stand); //IGameRole i = GameRoleFactory.Create(MyHead.SoldierPos, m_soldierInfo.m_modeltype, m_soldierInfo.m_name, AnimatorState.Stand); if (m_role == null) { NGUIUtil.DebugLog("创建3D角色出错:modelType =" + m_soldierInfo.m_modeltype); return; } GameObject go = m_role.RoleSkinCom.tRoot.gameObject; go.name = m_soldierInfo.m_name; go.transform.localScale = new Vector3(100f, 100f, 100f); Vector3 pos = go.transform.localPosition; pos.z -= 270; pos.y += 20; go.transform.localPosition = pos; GameObjectLoader.SetGameObjectLayer(go, gameObject.layer); if (m_soldierInfo.m_modeltype == 100003) { CreatePet1002(go.transform); } }
// 回调事件 static void ProcessRealHooks(int CmdID, int nErrorCode) { RegisterHooksTempToRealHooks(); if (s_DataHook.ContainsKey(CmdID)) { List <int> listHook = s_DataHook[CmdID]; int nCount = listHook.Count; for (int nCnt = 0; nCnt < nCount; nCnt++) { int nHookIndex = listHook[nCnt]; try { if (s_IndexDataHook.ContainsKey(nHookIndex)) { s_IndexDataHook[nHookIndex](nErrorCode); } } catch (Exception e) { //当上面s_IndexDataHook回调出现问题时,此回调就会被移除,小心成为坑 NGUIUtil.DebugLog(e.Message.ToString() + "," + CmdID); listHook.Remove(nHookIndex); if (listHook.Count == 0) { s_DataHook.Remove(CmdID); break; } } } } AntiRegisterHooksFrDelTemp(); }
/// <summary> /// 获取建筑数据 /// </summary> /// <param name="Type">建筑类型</param> /// <param name="Level">建筑等级</param> /// <param name="Quality">建筑品质</param> /// <param name="Star">建筑星级</param> /// <returns>建筑数据,null 获取失败</returns> public static void UpdateBuildInfo(ref BuildInfo Info) { if (Info == null) { return; } //获取基础建筑信息 s_building_typeInfo BaseInfo = GetBuildType(Info.BuildType); if (BaseInfo == null) { NGUIUtil.DebugLog("获取不到该类型的建筑数据:" + Info.BuildType); return; } FillBaseBuildInfo(BaseInfo, ref Info); //获取建筑掉落资源 s_buildresourceInfo sreinfo = GetBuildSource(Info.BuildType, Info.Level); if (sreinfo != null) { FillSourceDrop(sreinfo, ref Info); } //计算升级,升星,升阶 数据。 CalcBuildInfo(BaseInfo, ref Info); }
/// <summary> /// 设置数据并刷新UI /// </summary> /// <param name="info"></param> public void SetData(SoldierInfo info, bool isFirstLoad = false) { ClearUI(); m_soldierInfo = info; m_ID = info.ID; m_starInfo = SoldierM.GetSoldierStarData(info.SoldierTypeID, info.StarLevel); if (m_soldierInfo == null) { NGUIUtil.DebugLog("SoldierInfoWnd.cs m_soldierInfo==null !"); return; } EquipID[0] = info.Equipment0; EquipID[1] = info.Equipment1; EquipID[2] = info.Equipment2; EquipID[3] = info.Equipment3; EquipID[4] = info.Equipment4; EquipID[5] = info.Equipment5; SetUI(isFirstLoad); DoCanJinSheng(); DoCanShengXing(); MyHead.Toggle2.startsActive = true; DoCanJinSheng(); DoCanShengXing(); }
/// <summary> /// 获取建筑数据 /// </summary> /// <param name="Type">建筑类型</param> /// <param name="Level">建筑等级</param> /// <param name="Quality">建筑品质</param> /// <param name="Star">建筑星级</param> /// <returns>建筑数据,null 获取失败</returns> private static BuildInfo GetBuildInfo(int Type, int Level, int Quality, int Star) { //获取基础建筑信息 s_building_typeInfo BaseInfo = GetBuildType(Type); if (BaseInfo == null) { NGUIUtil.DebugLog("获取不到该类型的建筑数据:" + Type); return(null); } BuildInfo Info = new BuildInfo(); Info.BuildType = Type; Info.Level = Level; Info.Quality = Quality; Info.StarLevel = Star; FillBaseBuildInfo(BaseInfo, ref Info); //获取建筑掉落资源 s_buildresourceInfo sreinfo = GetBuildSource(Type, Level); if (sreinfo != null) { FillSourceDrop(sreinfo, ref Info); } //计算升级,升星,升阶 数据。 CalcBuildInfo(BaseInfo, ref Info); //返回结果 return(Info); }
//加入战斗 public static void JoinCombat(int SceneID, Life m, LifeMCore Core) { if (m == null) { NGUIUtil.DebugLog("life is null do not join"); return; } List <SceneSoldier> l = GetSceneSoldierList(Core.m_type); if (l != null) { bool IsHave = false; for (int i = 0; i < l.Count; i++) { if (SceneID == l[i].m_SceneID) { if (Core.m_MoveState != l[i].m_Core.m_MoveState) { l [i].m_Life = m; l [i].m_Core.Copy(Core); } IsHave = true; } } if (IsHave == false) { l.Add(new SceneSoldier(SceneID, m, Core)); } } }
void BtnSetTransGate_OnClickEventHandler(UIButton sender) { SetBuildParaStart(); List <CanvasCore> childrenCore = PutCanvasM.GetChildByCore(m_Core); if (childrenCore.Count == 0) { #if UNITY_EDITOR_LOG NGUIUtil.DebugLog("房间内未检测到传送门,请调查!!!"); #endif return; } ShipPlan P = ShipPlanDC.GetCurShipPlan(); if (P == null) { return; } foreach (var childCore in childrenCore) { TouchMove tm = PutCanvasM.GetTouchMoveByCore(childCore); BuildProperty lifeobj = tm.GetComponent <BuildProperty>(); if (lifeobj != null && lifeobj.GetModeType() == 1605) { Building1605 b = lifeobj.GetLife() as Building1605; if (b != null) { ShipPutInfo Info = P.GetShipBuildInfo(m_Core); b.ShowTranGate(new Int2(Info.shipput_data0, Info.shipput_data1)); } } } }
private void SetUI() { GameObject go = NDLoad.LoadWndItem("TrapViewItem", MyHead.trap); if (go != null) { TrapViewItem item = go.GetComponent <TrapViewItem>(); if (item != null) { item.SetBuildInfo(m_build, null, TrapState.Exit, 2); } } sdata.s_itemtypeInfo info = ItemM.GetItemInfo(m_build.fragmentTypeID); if (info != null) { NGUIUtil.Set2DSprite(MyHead.Spr2DItem, "Textures/item/" + info.icon); } else { NGUIUtil.DebugLog("m_build.fragmentTypeID =" + m_build.fragmentTypeID + "not found!"); } NGUIUtil.SetLableText(MyHead.LblItemNum, m_FragmentNum); NGUIUtil.SetLableText(MyHead.LblWoodNum, m_wood); NGUIUtil.SetLableText(MyHead.LblGoldNum, m_coin); }
/// <summary> /// 获取多语言配置文本 /// </summary> public static string GetLocalizationStr <T>(T skey) { if (!Localization.Exists(skey.ToString())) { NGUIUtil.DebugLog(skey.ToString() + "使用不存在的keyCode!"); return(""); } return(Localization.Get(skey.ToString())); }
protected void CheckListUIPanel(List <UIPanel> listUIpanel) { foreach (UIPanel item in listUIpanel) { if (item == null) { NGUIUtil.DebugLog("_h文件中的listUIpanel 有未设定的"); } } }
public GridActionCmd100003Skill02(DoQianyaoFun qianyaofun, DoAttackFun fun, int AttackSceneId, WalkDir AttackDir, int deep, int skillid) : base(qianyaofun, fun, AttackSceneId, AttackDir, deep, skillid) { m_Duration = 1.667f; ///3.667f; m_EventTime = 1f; //2.367f; m_CastTime = 1f; //2.267f; #if UNITY_EDITOR_LOG NGUIUtil.DebugLog("蹦达与蹦蹦怒气加持", "yellow"); #endif }
/// <summary> /// 创建已召唤炮弹兵 /// </summary> private void CreateTrap(List <BuildInfo> BuildList, TrapState trapState) { if (trapState == TrapState.Exit) { m_canShengji = null; } if (BuildList == null || BuildList.Count == 0) { return; } if (MyHead.Parent == null) { NGUIUtil.DebugLog("ShipCanvasDialogWnd ListParent!!!"); return; } if (trapState == TrapState.CanNotSum) { CreateBanner(); } PdbbbItem pbbItem = null; int count = 0; for (int i = 0; i < BuildList.Count; i++) { if (count % 4 == 0) { pbbItem = null; GameObject go = NDLoad.LoadWndItem("PdbbbItem", MyHead.Parent.transform); pbbItem = go.GetComponent <PdbbbItem>(); } count++; if (pbbItem != null && pbbItem.MyHead.Table != null) { GameObject viewgo = NDLoad.LoadWndItem("TrapViewItem", pbbItem.MyHead.Table.transform); if (viewgo != null) { TrapViewItem item = viewgo.GetComponent <TrapViewItem>(); if (item != null) { item.SetBuildInfo(BuildList[i], this, trapState); if (null == m_canShengji && trapState == TrapState.Exit) { CanLevelResult LevResult = buildingM.GetLevelCanUP(BuildList[i]); if (LevResult == CanLevelResult.CanUp) { m_canShengji = item; } } } } } } }
void SetUI(ref List <int> listUsedItem) { s_itemtypeInfo info = ItemM.GetItemInfo(m_itemTypeID); if (info != null) { NGUIUtil.Set2DSprite(Spr2dEquipIcon, "Textures/item/", info.icon.ToString()); int quality = ConfigM.GetBigQuality(info.quality); NGUIUtil.SetSprite(SprEquipQuality, quality.ToString()); } else { NGUIUtil.DebugLog(" ItemM.GetItemInfo " + m_itemTypeID.ToString() + " not found!"); return; } //设置装备总数量和合成所需的数量 int totalCount = ItemDC.GetItemCount(m_itemTypeID); int countUsed = listUsedItem.Count; if (totalCount > 0) { int nCountTemp = totalCount; int nCnt = 0; for (nCnt = 0; nCnt < countUsed; nCnt++) { if (listUsedItem[nCnt] == m_itemTypeID) { nCountTemp--; if (nCountTemp == 0) { break; } } } for (nCnt = 0; nCnt < m_iNeedNum; nCnt++) { listUsedItem.Add(m_itemTypeID); } if (nCountTemp < m_iNeedNum) { totalCount = nCountTemp; } } string numText = ""; if (totalCount >= m_iNeedNum) { numText = string.Format("[FFFFFF]{0}/{1}[-]", totalCount, m_iNeedNum); } else { numText = string.Format("[FF0000]{0}/{1}[-]", totalCount, m_iNeedNum); } NGUIUtil.SetLableText <string>(LblNum, numText); }
public virtual void SetWndDepth() { if (BaseHead().m_listUIpanel.Count == 0) { NGUIUtil.DebugLog("请给窗口添加UIPanel" + gameObject.name); } CheckListUIPanel(BaseHead().m_listUIpanel); int MaxDepth = SetDepth(WndManager.NormalWndDepth); WndManager.NormalWndDepth = MaxDepth; }
/// <summary> /// 设置窗口的深度(控制窗口表现的前后) /// </summary> /// <param name="depth"></param> public override void SetWndDepth() { if (BaseHead().m_listUIpanel.Count == 0) { NGUIUtil.DebugLog("请给窗口添加UIPanel" + gameObject.name); } CheckListUIPanel(BaseHead().m_listUIpanel); int MaxDepth = SetDepth(WndManager.TopWndDepth); WndManager.TopWndDepth = MaxDepth; transform.localPosition = new Vector3(transform.localPosition.x, transform.localPosition.y, ConstantData.iDepBefore3DModel); }
public void SetData(SoldierInfo info) { ClearUI(); m_soldierInfo = info; if (m_soldierInfo == null) { NGUIUtil.DebugLog("SoldierInfoWnd.cs m_soldierInfo==null !"); return; } SetUI(); }
private void SetUI() { if (MyHead.AttributesTable == null || m_soldierInfo == null) { NGUIUtil.DebugLog("HeroIntroduceWnd.cs AttributesTable parent or m_soldierInfo null !!! "); return; } AddItem02(); AddItem04(); AddAllItem05(); NGUIUtil.RepositionTable(MyHead.AttributesTable); }
private void Recv_ItemSellRespone(int nErrorCode) { if (nErrorCode == 0) { BtnClose_OnClickHander(null); m_parent.ItemUsed(); } else { NGUIUtil.DebugLog("道具出售错误码:" + nErrorCode.ToString()); } }
/// <summary> /// /// </summary> /// <param name="dItemID"></param> /// <param name="posIndex">装备索引 0~5</param> /// <param name="solderierInfo"></param> public void SetData(int dItemID, int posIndex, SoldierInfo solderierInfo) { m_iItemID = dItemID; m_soldierInfo = solderierInfo; m_iPosIndex = posIndex; m_itemTypeID = SoldierM.GetSoldierEquip(solderierInfo.SoldierTypeID, solderierInfo.Quality, posIndex); if (m_itemTypeID == 0) { NGUIUtil.DebugLog(string.Format(" SoldierTypeID={0},Quality={1},EquipIndex={2} 装备静态数据未配置", solderierInfo.SoldierTypeID, solderierInfo.Quality, posIndex)); return; } if (m_iItemID == 0)//当未穿装备时 { ItemTypeInfo info = ItemDC.SearchItem(m_itemTypeID); if (info != null) { m_iItemID = info.ID; m_itemTypeID = info.itemType; m_icon = info.m_Icon; } else { s_itemtypeInfo sInfo = ItemM.GetItemInfo(m_itemTypeID); if (sInfo != null) { m_icon = sInfo.icon; } else { NGUIUtil.DebugLog("itemTypeID =" + m_itemTypeID + " 未配置"); } } } else//已装备 { ItemTypeInfo info1 = ItemDC.GetItem(m_iItemID); if (info1 == null || info1.Positon == 0) { NGUIUtil.DebugLog("获取已装备的信息失败 itemID =" + m_iItemID); return; } m_icon = info1.m_Icon; if (info1 != null) { m_iEquipQuality = info1.m_Quality; } } int itemTypeid = 0; m_equipmentPutType = SoldierM.CheckCanPutEquip(solderierInfo, dItemID, posIndex, ref itemTypeid); SetUI(); }
/// <summary> /// 0702 获取所有已造建筑回应 /// </summary> /// <param name="Info"></param> void CanCombat(int nErrorCode) { if (nErrorCode == 0) { NGUIUtil.DebugLog("2:收到702 获取所有建筑请求 回应" + Time.time, "yellow"); JoinCombat(); } else { Debug.Log("获取数据失败:" + nErrorCode.ToString()); } DataCenter.AntiRegisterHooks((int)gate.Command.CMD.CMD_702, CanCombat); }
/// <summary> /// 获取初级建筑数据 /// </summary> /// <param name="Type">建筑类型</param> /// <param name="Level">建筑等级</param> /// <param name="Quality">建筑品质</param> /// <param name="Star">建筑星级</param> /// <returns>建筑数据,null 获取失败</returns> public static BuildInfo GetStartBuildInfo(int Type) { //获取基础建筑信息 s_building_typeInfo BaseInfo = GetBuildType(Type); if (BaseInfo == null) { NGUIUtil.DebugLog("获取不到该类型的建筑数据:" + Type); return(null); } return(GetBuildInfo(Type, 1, 10, BaseInfo.starlevel)); }
/// <summary> /// 获取装备情况 /// </summary> private void GetEquimment() { if (MyHead.EquipmentsParent == null) { NGUIUtil.DebugLog("SoldierInfoWnd.cs EquipmentsParent == null !"); return; } for (int i = 0; i < 6; i++) { NDLoad.LoadWndItem("EquipmentItem", MyHead.EquipmentsParent.transform); } NGUIUtil.RepositionTable(MyHead.EquipmentsParent); }
/// <summary> /// 获取当前年月第n次签到的奖励 /// </summary> public static s_signinInfo GetSignInInfo(int times) { //先选出当前年月的奖励数据 List <s_signinInfo> m_lData = new List <s_signinInfo>(); m_lData = GetCurSignInData(); if (times >= m_lData.Count) { NGUIUtil.DebugLog(string.Format("获取第 {0}次奖励数据未在s_signin表中找到", times)); return(null); } return(m_lData[times - 1]); }
/// <summary> /// 0702 获取所有已造建筑回应 /// </summary> /// <param name="Info"></param> void CanCombat(int nErrorCode) { DataCenter.AntiRegisterHooks((int)gate.Command.CMD.CMD_702, CanCombat); if (nErrorCode == 0) { NGUIUtil.DebugLog("2:收到702 获取所有建筑请求 回应" + Time.time, "yellow"); SceneM.Load(CombatScene.GetSceneName(), false, null, false); } else { Debug.Log("获取数据失败:" + nErrorCode.ToString()); } }
public void BtnSelect_OnClickEventHandler(UIButton sender) { //NGUIUtil.DebugLog(string.Format("选取了 炮弹兵:"+Info.m_name)); if (Info == null) { NGUIUtil.DebugLog("ExistHeroItem.cs SoldierInfo == null !!!"); return; } //SoldierInfoWnd wnd = WndManager.GetDialog<SoldierInfoWnd>(); PdbycWnd wnd = WndManager.GetDialog <PdbycWnd>(); wnd.SetData(Info, true); }
/// <summary> /// 获取物品图标 /// </summary> public static string GetItemIcon(int ItemTypeID) { s_itemtypeInfo info = GetItemInfo(ItemTypeID); if (info != null) { return(info.icon.ToString()); } else { NGUIUtil.DebugLog("静态表s_itemtypeInfo id=" + ItemTypeID + " 未找到!"); } return(null); }
public override void ActionUpdate(float deltatime) { if (m_slider == null) { NGUIUtil.DebugLog(m_target.name + " Slider is null "); Finish(); return; } // base.ActionUpdate(deltatime); if (m_TimeCount < m_Duration) { m_slider.value = Mathf.Lerp(m_FromValue, m_fToValue, m_TimeCount / m_Duration); } }