protected override void OnInnerGUI(XCutSceneData data) { EditorGUILayout.Space(); if (!data.GeneralShow) { EditorGUI.BeginChangeCheck(); _id = EditorGUILayout.IntField("ID", _id); if (EditorGUI.EndChangeCheck()) { XEntityStatistics.RowData row = XTableMgr.GetTable <XEntityStatistics>().GetByID(_id); if (row != null) { _name = row.Name; } } _name = EditorGUILayout.TextField("Name", _name); } _discription = EditorGUILayout.TextArea(_discription, GUILayout.Height(80)); EditorGUILayout.BeginHorizontal(); _duration = EditorGUILayout.FloatField("Length", _duration); GUILayout.Label("(s)"); EditorGUILayout.EndHorizontal(); EditorGUILayout.Space(); _x = EditorGUILayout.FloatField("X", _x); _y = EditorGUILayout.FloatField("Y", _y); }
public static GameObject GetStatics(uint statictid) { XEntityStatistics.RowData row = XTableMgr.GetTable <XEntityStatistics>().GetByID((int)statictid); if (row != null) { return(GetDummy(row.PresentID)); } return(null); }
public static GameObject GetDummy(uint id) { XEntityStatistics.RowData data = AssociatedData(id); if (data == null) { return(null); } return(XAnimationLibrary.GetDummy(data.PresentID)); }
public GameObject GetDummy(uint statictid) { XEntityStatistics.RowData row = XTableMgr.GetTable<XEntityStatistics>().GetByID((int)statictid); if (row != null) { XEntityPresentation.RowData raw_data = XTableMgr.GetTable<XEntityPresentation>().GetItemID(row.PresentID); if (raw_data == null) return null; string prefab = raw_data.Prefab; return XResources.Load<GameObject>("Prefabs/" + prefab, AssetType.Prefab); } return null; }
// 从本地读出来的配置数据初始化 public void InitAttribute(XEntityStatistics.RowData data) { FightGroup = data.Fightgroup; NormalAttackProb = data.AttackProb; EnterFightRange = data.Sight; Blocked = data.Block; AIStartTime = data.AIStartTime; AIActionGap = data.AIActionGap; IsFixedInCD = data.IsFixedInCD; Outline = data.Highlight; FloatingMin = data.FloatHeight != null && data.FloatHeight.Length > 0 ? data.FloatHeight[0] : 0; FloatingMax = data.FloatHeight != null && data.FloatHeight.Length > 0 ? data.FloatHeight[1] : 0; EndShow = data.EndShow; GeneralCutScene = data.UsingGeneralCutscene; FightTogetherDis = data.FightTogetherDis; AiBehavior = data.AiBehavior; AiHit = data.aihit; TypeID = (uint)data.UID; }
protected override void ParseInfo(string data) { base.ParseInfo(data); string rawData = data.Substring(3); switch (infotype) { case InfoType.SpawnType: SpawnType = spawnType; break; case InfoType.BaseInfo: UID = uid; break; case InfoType.ExString: string[] strInfos = rawData.Split('|'); if (strInfos.Length > 0) { exString = strInfos[0]; } break; case InfoType.EditorInfo: if (rawData.Length > 0) { string[] strEditorCoords = rawData.Split(','); rectX = int.Parse(strEditorCoords[0]); rectY = int.Parse(strEditorCoords[1]); } break; case InfoType.TransformInfo: string[] strFloats = rawData.Split(','); int index = int.Parse(strFloats[0]); _prefabSlot.Add(index); if (_prefab != null) { if (go == null) { go = GameObject.Instantiate(_prefab); } go.name = GetMonsterName(_id); go.transform.position = pos; go.transform.Rotate(0, rotateY, 0); XEntityStatistics.RowData sData = XTableMgr.GetTable <XEntityStatistics>().GetByID((int)_uni_id); if (sData == null) { XDebug.Log("enemy id not exist:", _uni_id); break; } if (sData.PresentID > 0) { XEntityPresentation.RowData pData = XTableMgr.GetTable <XEntityPresentation>().GetItemID((uint)sData.PresentID); go.transform.localScale = Vector3.one * pData.Scale; } } break; } }
public override void DoWindow(int id) { base.DoWindow(id); if (_wave.go != null) { Selection.activeGameObject = _wave.go; //EditorGUIUtility.PingObject(_wave.go); } if (_icon == null) { GenerateIcon(); } GUILayout.BeginHorizontal(); GUILayout.BeginVertical(new GUILayoutOption[] { GUILayout.Width(70), GUILayout.Height(100) }); GUILayout.Box(_icon); GUILayout.BeginHorizontal(); GUIStyle gs = new GUIStyle(); gs.alignment = TextAnchor.LowerRight; gs.normal.textColor = Color.white; XEntityStatistics.RowData eData = XTableMgr.GetTable <XEntityStatistics>().GetByID((int)_wave.UID); if (eData != null && _wave.SpawnType == LevelSpawnType.Spawn_Monster) { if (eData.Type == 1) { gs.normal.textColor = Color.red; } else if (eData.Type == 6) { gs.normal.textColor = Color.yellow; } } if (_wave.levelscript != null && _wave.levelscript.Length > 0) { int fileNamePos = _wave.levelscript.LastIndexOf("/"); GUILayout.Label(_wave.levelscript.Substring(fileNamePos + 1), gs); } else { GUILayout.Label(_wave.UID + "x" + _wave.Count, gs); } GUILayout.EndHorizontal(); GUILayout.EndVertical(); GUILayout.Box("", new GUILayoutOption[] { GUILayout.Width(1), GUILayout.Height(80) }); GUILayout.BeginVertical(); // spawn info string strSpawn = ""; GUIStyle gsSpawn = new GUIStyle(); gsSpawn.alignment = TextAnchor.LowerRight; if (_wave.preWaves != null && _wave.preWaves.Length > 0) { strSpawn = "Pre Wave:" + _wave.preWaves; gsSpawn.normal.textColor = Color.green; } if (_wave.exString != null && _wave.exString.Length > 0) { strSpawn = "\nES:" + _wave.exString; gsSpawn.normal.textColor = Color.green; } strSpawn += "\nTime: " + _wave.time; gsSpawn.normal.textColor = Color.white; GUILayout.Label(strSpawn, gs, new GUILayoutOption[] { GUILayout.Width(100) }); GUILayout.BeginHorizontal(new GUILayoutOption[] { GUILayout.Height(30) }); if (_wave.HasBuff) { Texture item = AssetDatabase.LoadAssetAtPath("Assets/Editor/LevelEditor/res/bx2.png", typeof(Texture)) as Texture; GUILayout.Box(item); } GUILayout.EndHorizontal(); GUILayout.Box("", new GUILayoutOption[] { GUILayout.Width(100), GUILayout.Height(1) }); // operation GUILayout.BeginHorizontal(); if (GUILayout.Button(RemoveWaveButtonContent, LevelLayout.miniButtonWidth)) { _wave.LevelMgr.RemoveWave(_wave.ID); _wave.RemoveSceneViewInstance(); } GUILayout.EndHorizontal(); GUILayout.EndVertical(); GUILayout.EndHorizontal(); GUI.DragWindow(); }