public void ShowText(string t, GameObject c, BattleTextSettings ts) { this.combatant = c; this.settings = ts; if(this.InitSettings()) { this.text = t; this.cam = Camera.main; if(!GameHandler.GetLevelHandler().useGUILayout) GameHandler.GUIHandler().AddBattleTextSprite(this); } }
public void ShowNumber(int i, GameObject c, BattleTextSettings ts) { this.combatant = c; this.settings = ts; if(this.InitSettings()) { this.text = this.settings.text[GameHandler.GetLanguage()]; this.value = i; this.startValue = (int)((this.value/100.0f)*this.settings.startCountFrom); this.countDistance = this.value - this.startValue; this.countInterpolate = Interpolate.Ease(this.settings.countInterpolate); this.cam = Camera.main; this.counting = true; } }
public static void BattleTextSettings(ref BattleTextSettings ts, string txt, bool showCount) { ts.active = EditorGUILayout.Toggle("Show text", ts.active, GUILayout.Width(mWidth)); if(ts.active) { EditorGUILayout.BeginHorizontal(); EditorGUILayout.BeginVertical(); GUILayout.Label("Text settings", EditorStyles.boldLabel); GUILayout.Label(txt); for(int i=0; i<ts.text.Length; i++) { ts.text[i] = EditorGUILayout.TextField(DataHolder.Languages().GetName(i), ts.text[i], GUILayout.Width(mWidth)); } ts.color = EditorGUILayout.Popup("Color", ts.color, DataHolder.Colors().GetNameList(true), GUILayout.Width(mWidth)); ts.showShadow = EditorGUILayout.Toggle("Show shadow", ts.showShadow, GUILayout.Width(mWidth)); if(ts.showShadow) { ts.shadowColor = EditorGUILayout.Popup("Shadow color", ts.shadowColor, DataHolder.Colors().GetNameList(true), GUILayout.Width(mWidth)); ts.shadowOffset = EditorGUILayout.Vector2Field("Shadow offset", ts.shadowOffset, GUILayout.Width(mWidth)); } EditorGUILayout.Separator(); ts.visibleTime = EditorGUILayout.FloatField("Visible time", ts.visibleTime, GUILayout.Width(mWidth)); EditorGUILayout.Separator(); if(showCount && GUISystemType.UNITY.Equals(DataHolder.GameSettings().guiSystemType)) { ts.countToValue = EditorGUILayout.Toggle("Count to value", ts.countToValue, GUILayout.Width(mWidth)); if(ts.countToValue) { ts.startCountFrom = EditorGUILayout.FloatField("Start from (%)", ts.startCountFrom, GUILayout.Width(mWidth)); ts.countInterpolate = (EaseType)EditorGUILayout.EnumPopup("Interpolation", ts.countInterpolate, GUILayout.Width(mWidth)); ts.countTime = EditorGUILayout.FloatField("Time", ts.countTime, GUILayout.Width(mWidth)); } EditorGUILayout.Separator(); } else ts.countToValue = false; GUILayout.Label("Position settings", EditorStyles.boldLabel); ts.posChild = EditorGUILayout.TextField("Use child", ts.posChild, GUILayout.Width(mWidth)); ts.localSpace = EditorGUILayout.Toggle("Local space", ts.localSpace, GUILayout.Width(mWidth)); ts.baseOffset = EditorGUILayout.Vector3Field("Base offset", ts.baseOffset, GUILayout.Width(mWidth)); ts.randomOffsetFrom = EditorGUILayout.Vector3Field("Random offset from", ts.randomOffsetFrom, GUILayout.Width(mWidth)); ts.randomOffsetTo = EditorGUILayout.Vector3Field("Random offset to", ts.randomOffsetTo, GUILayout.Width(mWidth)); EditorGUILayout.Separator(); EditorGUILayout.EndVertical(); EditorGUILayout.Separator(); EditorGUILayout.Separator(); EditorGUILayout.Separator(); EditorGUILayout.BeginVertical(); GUILayout.Label("Fade settings", EditorStyles.boldLabel); ts.fadeIn = EditorGUILayout.Toggle("Fade in", ts.fadeIn, GUILayout.Width(mWidth)); if(ts.fadeIn) { ts.fadeInTime = EditorGUILayout.FloatField("Fade in time", ts.fadeInTime, GUILayout.Width(mWidth)); ts.fadeInStart = EditorGUILayout.FloatField("Start alpha", ts.fadeInStart, GUILayout.Width(mWidth)); if(ts.fadeInStart < 0) ts.fadeInStart = 0; else if(ts.fadeInStart > 1) ts.fadeInStart = 1; ts.fadeInEnd = EditorGUILayout.FloatField("End alpha", ts.fadeInEnd, GUILayout.Width(mWidth)); if(ts.fadeInEnd < 0) ts.fadeInEnd = 0; else if(ts.fadeInEnd > 1) ts.fadeInEnd = 1; ts.fadeInInterpolate = (EaseType)EditorGUILayout.EnumPopup("Interpolation", ts.fadeInInterpolate, GUILayout.Width(mWidth)); } EditorGUILayout.Separator(); ts.fadeOut = EditorGUILayout.Toggle("Fade out", ts.fadeOut, GUILayout.Width(mWidth)); if(ts.fadeOut) { ts.fadeOutTime = EditorGUILayout.FloatField("Fade out time", ts.fadeOutTime, GUILayout.Width(mWidth)); ts.fadeOutStart = EditorGUILayout.FloatField("Start alpha", ts.fadeOutStart, GUILayout.Width(mWidth)); if(ts.fadeOutStart < 0) ts.fadeOutStart = 0; else if(ts.fadeOutStart > 1) ts.fadeOutStart = 1; ts.fadeOutEnd = EditorGUILayout.FloatField("End alpha", ts.fadeOutEnd, GUILayout.Width(mWidth)); if(ts.fadeOutEnd < 0) ts.fadeOutEnd = 0; else if(ts.fadeOutEnd > 1) ts.fadeOutEnd = 1; ts.fadeOutInterpolate = (EaseType)EditorGUILayout.EnumPopup("Interpolation", ts.fadeOutInterpolate, GUILayout.Width(mWidth)); } EditorGUILayout.Separator(); GUILayout.Label("Prefab settings", EditorStyles.boldLabel); ts.spawnPrefab = EditorGUILayout.Toggle("Spawn prefab", ts.spawnPrefab, GUILayout.Width(mWidth)); if(ts.spawnPrefab) { if(ts.prefab == null && "" != ts.prefabName) { ts.prefab = (GameObject)Resources.Load(BattleSystemData.PREFAB_PATH+ ts.prefabName, typeof(GameObject)); } ts.prefab = (GameObject)EditorGUILayout.ObjectField("Prefab", ts.prefab, typeof(GameObject), false, GUILayout.Width(mWidth)); if(ts.prefab) ts.prefabName = ts.prefab.name; else ts.prefabName = ""; ts.prefabTime = EditorGUILayout.FloatField("Destroy after", ts.prefabTime, GUILayout.Width(mWidth)); ts.prefabChild = EditorGUILayout.TextField("Spawn on child", ts.prefabChild, GUILayout.Width(mWidth)); ts.prefabOffset = EditorGUILayout.Vector3Field("Spawn offset", ts.prefabOffset, GUILayout.Width(mWidth)); } EditorGUILayout.Separator(); GUILayout.Label("Audio settings", EditorStyles.boldLabel); ts.playAudio = EditorGUILayout.Toggle("Play audio", ts.playAudio, GUILayout.Width(mWidth)); if(ts.playAudio) { if(ts.audioClip == null && "" != ts.audioName) { ts.audioClip = (AudioClip)Resources.Load(BattleSystemData.AUDIO_PATH+ ts.audioName, typeof(AudioClip)); } ts.audioClip = (AudioClip)EditorGUILayout.ObjectField("Audio clip", ts.audioClip, typeof(AudioClip), false, GUILayout.Width(mWidth)); if(ts.audioClip) ts.audioName = ts.audioClip.name; else ts.audioName = ""; } EditorGUILayout.Separator(); EditorGUILayout.Separator(); EditorGUILayout.EndVertical(); EditorGUILayout.Separator(); EditorGUILayout.Separator(); EditorGUILayout.Separator(); EditorGUILayout.BeginVertical(); GUILayout.Label("Animation", EditorStyles.boldLabel); ts.animate = EditorGUILayout.Toggle("Animate", ts.animate, GUILayout.Width(mWidth)); if(ts.animate) { ts.xRandom = EditorGUILayout.Toggle("X random", ts.xRandom, GUILayout.Width(mWidth)); if(ts.xRandom) { ts.xMin = EditorGUILayout.FloatField("X min", ts.xMin, GUILayout.Width(mWidth)); ts.xMax = EditorGUILayout.FloatField("X max", ts.xMax, GUILayout.Width(mWidth)); } else { ts.xSpeed = EditorGUILayout.FloatField("X speed", ts.xSpeed, GUILayout.Width(mWidth)); } EditorGUILayout.Separator(); ts.yRandom = EditorGUILayout.Toggle("Y random", ts.yRandom, GUILayout.Width(mWidth)); if(ts.yRandom) { ts.yMin = EditorGUILayout.FloatField("Y min", ts.yMin, GUILayout.Width(mWidth)); ts.yMax = EditorGUILayout.FloatField("Y max", ts.yMax, GUILayout.Width(mWidth)); } else { ts.ySpeed = EditorGUILayout.FloatField("Y speed", ts.ySpeed, GUILayout.Width(mWidth)); } EditorGUILayout.Separator(); ts.zRandom = EditorGUILayout.Toggle("Z random", ts.zRandom, GUILayout.Width(mWidth)); if(ts.zRandom) { ts.zMin = EditorGUILayout.FloatField("Z min", ts.zMin, GUILayout.Width(mWidth)); ts.zMax = EditorGUILayout.FloatField("Z max", ts.zMax, GUILayout.Width(mWidth)); } else { ts.zSpeed = EditorGUILayout.FloatField("Z speed", ts.zSpeed, GUILayout.Width(mWidth)); } EditorGUILayout.Separator(); } ts.flash = EditorGUILayout.Toggle("Flash object", ts.flash, GUILayout.Width(mWidth)); if(ts.flash) { ts.fromCurrent = EditorGUILayout.Toggle("From current", ts.fromCurrent, GUILayout.Width(mWidth)); ts.flashTime = EditorGUILayout.FloatField("Time", ts.flashTime, GUILayout.Width(mWidth)); ts.flashChildren = EditorGUILayout.Toggle("Flash children", ts.flashChildren, GUILayout.Width(mWidth)); ts.flashInterpolate = (EaseType)EditorGUILayout.EnumPopup("Interpolation", ts.flashInterpolate, GUILayout.Width(mWidth)); EditorGUILayout.Separator(); ts.flashAlpha = EditorGUILayout.Toggle("Alpha", ts.flashAlpha, GUILayout.Width(mWidth)); if(ts.flashAlpha) { if(!ts.fromCurrent) ts.alphaStart = EditorGUILayout.FloatField("From", ts.alphaStart, GUILayout.Width(mWidth)); ts.alphaEnd = EditorGUILayout.FloatField("To", ts.alphaEnd, GUILayout.Width(mWidth)); EditorGUILayout.Separator(); } ts.flashRed = EditorGUILayout.Toggle("Red", ts.flashRed, GUILayout.Width(mWidth)); if(ts.flashRed) { if(!ts.fromCurrent) ts.redStart = EditorGUILayout.FloatField("From", ts.redStart, GUILayout.Width(mWidth)); ts.redEnd = EditorGUILayout.FloatField("To", ts.redEnd, GUILayout.Width(mWidth)); EditorGUILayout.Separator(); } ts.flashGreen = EditorGUILayout.Toggle("Green", ts.flashGreen, GUILayout.Width(mWidth)); if(ts.flashGreen) { if(!ts.fromCurrent) ts.greenStart = EditorGUILayout.FloatField("From", ts.greenStart, GUILayout.Width(mWidth)); ts.greenEnd = EditorGUILayout.FloatField("To", ts.greenEnd, GUILayout.Width(mWidth)); EditorGUILayout.Separator(); } ts.flashBlue = EditorGUILayout.Toggle("Blue", ts.flashBlue, GUILayout.Width(mWidth)); if(ts.flashBlue) { if(!ts.fromCurrent) ts.blueStart = EditorGUILayout.FloatField("From", ts.blueStart, GUILayout.Width(mWidth)); ts.blueEnd = EditorGUILayout.FloatField("To", ts.blueEnd, GUILayout.Width(mWidth)); } } EditorGUILayout.Separator(); EditorGUILayout.Separator(); EditorGUILayout.EndVertical(); GUILayout.FlexibleSpace(); EditorGUILayout.EndHorizontal(); } }
public void LoadData() { ArrayList data = XMLHandler.LoadXML(dir+filename); this.system = new BattleSystem(); this.menu = new BattleMenu(); this.end = new BattleEnd(); this.cam = new BattleCam(); this.control = new BattleControl(); this.effectTextSettings = new BattleTextSettings(); this.missTextSettings = new BattleTextSettings("Miss"); this.blockTextSettings = new BattleTextSettings("Block"); this.castCancelTextSettings = new BattleTextSettings("Cast canceled"); this.levelUpTextSettings = new BattleTextSettings("Level up!"); this.classLevelUpTextSettings = new BattleTextSettings("Class level up!"); this.counterText = new ArrayList(); this.allAlliesText = new ArrayList(); this.allEnemiesText = new ArrayList(); this.stealItemText = new ArrayList(); this.stealItemFailText = new ArrayList(); this.stealMoneyText = new ArrayList(); this.stealMoneyFailText = new ArrayList(); this.battleStartText = new ArrayList(); this.battleVictoryText = new ArrayList(); this.battleDefeatText = new ArrayList(); this.battleEscapeText = new ArrayList(); for(int i=0; i<DataHolder.Languages().GetDataCount(); i++) { this.counterText.Add("Counter attack"); this.allAlliesText.Add("All allies"); this.allEnemiesText.Add("All enemies"); this.stealItemText.Add("%n stole %"); this.stealItemFailText.Add("Steal failed"); this.stealMoneyText.Add("%n stole %"); this.stealMoneyFailText.Add("Steal failed"); this.battleStartText.Add("Fight!"); this.battleVictoryText.Add("Victory"); this.battleDefeatText.Add("You are defeated"); this.battleEscapeText.Add("You escaped"); } if(data.Count > 0) { foreach(Hashtable entry in data) { if(entry[XMLHandler.NODE_NAME] as string == BattleSystemData.BATTLESYSTEM) { if(entry.ContainsKey(XMLHandler.NODES)) { ArrayList subs = entry[XMLHandler.NODES] as ArrayList; foreach(Hashtable val in subs) { if(val[XMLHandler.NODE_NAME] as string == BattleSystemData.SYSTEM) { this.system.type = (BattleSystemType)System.Enum.Parse( typeof(BattleSystemType), (string)val["type"]); if(val.ContainsKey("enemycounting")) { this.system.enemyCounting = (EnemyCounting)System.Enum.Parse( typeof(EnemyCounting), (string)val["enemycounting"]); } this.system.turnCalc = int.Parse((string)val["turncalc"]); if(val.ContainsKey("starttimecalc")) this.system.startTimeCalc = int.Parse((string)val["starttimecalc"]); this.system.defendFormula = int.Parse((string)val["defendformula"]); this.system.escapeFormula = int.Parse((string)val["escapeformula"]); this.system.actionBorder = int.Parse((string)val["actionborder"]); if(val.ContainsKey("menuborder")) { this.system.menuBorder = int.Parse((string)val["menuborder"]); } else this.system.menuBorder = this.system.actionBorder; if(val.ContainsKey("maxtimebar")) { this.system.maxTimebar = int.Parse((string)val["maxtimebar"]); } else this.system.maxTimebar = this.system.actionBorder; if(val.ContainsKey("enablemultichoice")) this.system.enableMultiChoice = true; if(val.ContainsKey("useallactions")) this.system.useAllActions = true; if(val.ContainsKey("usetimebaraction")) { this.system.useTimebarAction = (UseTimebarAction)System.Enum.Parse( typeof(UseTimebarAction), (string)val["usetimebaraction"]); } this.system.activeCommand = bool.Parse((string)val["activecommand"]); this.system.actionPause = bool.Parse((string)val["actionpause"]); if(val.ContainsKey("dynamiccombat")) { this.system.dynamicCombat = true; if(val.ContainsKey("mintimebetween")) { this.system.minTimeBetween = float.Parse((string)val["mintimebetween"]); } } if(val.ContainsKey("playdamageanim")) this.system.playDamageAnim = true; if(val.ContainsKey("blockautoatkmenu")) this.system.blockAutoAttackMenu = true; if(val.ContainsKey("turnbonuses")) { this.system.turnBonuses = true; this.system.statusBonus = new int[int.Parse((string)val["turnbonuses"])]; } if(val.ContainsKey("revivesets")) { this.system.reviveAfterBattle = true; int count = int.Parse((string)val["revivesets"]); this.system.reviveSetStatus = new bool[count]; this.system.reviveStatus = new int[count]; } if(val.ContainsKey("startstatuses")) { this.system.startBattleStatusSettings = true; int count = int.Parse((string)val["startstatuses"]); this.system.startSetStatus = new bool[count]; this.system.startStatus = new int[count]; } if(val.ContainsKey("endstatuses")) { this.system.endBattleStatusSettings = true; int count = int.Parse((string)val["endstatuses"]); this.system.endSetStatus = new bool[count]; this.system.endStatus = new int[count]; } if(val.ContainsKey("attacktimebaruse")) { this.system.attackEndTurn = false; this.system.attackTimebarUse = float.Parse((string)val["attacktimebaruse"]); } if(val.ContainsKey("itemtimebaruse")) { this.system.itemEndTurn = false; this.system.itemTimebarUse = float.Parse((string)val["itemtimebaruse"]); } if(val.ContainsKey("defendtimebaruse")) { this.system.defendEndTurn = false; this.system.defendTimebarUse = float.Parse((string)val["defendtimebaruse"]); } if(val.ContainsKey("escapetimebaruse")) { this.system.escapeEndTurn = false; this.system.escapeTimebarUse = float.Parse((string)val["escapetimebaruse"]); } if(val.ContainsKey("atbtickinterval")) { this.system.atbTickInterval = float.Parse((string)val["atbtickinterval"]); } if(val.ContainsKey("battlerange")) { this.system.battleRange = float.Parse((string)val["battlerange"]); } if(val.ContainsKey("airange")) { this.system.aiRange = float.Parse((string)val["airange"]); } if(val.ContainsKey("airechecktime")) { this.system.aiRecheckTime = float.Parse((string)val["airechecktime"]); } if(val.ContainsKey("blockcontrolmenu")) this.system.blockControlMenu = true; if(val.ContainsKey("blockcontrolaction")) this.system.blockControlAction = true; if(val.ContainsKey("blockmse")) this.system.blockMSE = true; if(val.ContainsKey("freezeaction")) this.system.freezeAction = true; if(val.ContainsKey("enemyspots")) { this.system.enemySpot = new Vector3[int.Parse((string)val["enemyspots"])]; this.system.enemySpotPA = new Vector3[this.system.enemySpot.Length]; this.system.enemySpotEA = new Vector3[this.system.enemySpot.Length]; } if(val.ContainsKey("spotdistance")) { this.system.spotOnGround = true; this.system.spotDistance = float.Parse((string)val["spotdistance"]); this.system.spotLayer = int.Parse((string)val["spotlayer"]); if(val.ContainsKey("spotx")) { this.system.spotOffset = VectorHelper.FromHashtable(val, "spotx", "spoty", "spotz"); } } if(val.ContainsKey("enablepaspots")) this.system.enablePASpots = true; if(val.ContainsKey("enableeaspots")) this.system.enableEASpots = true; if(val.ContainsKey(XMLHandler.NODES)) { ArrayList s = val[XMLHandler.NODES] as ArrayList; foreach(Hashtable ht in s) { if(ht[XMLHandler.NODE_NAME] as string == BattleSystemData.BONUS) { this.system.statusBonus[int.Parse((string)ht["id"])] = int.Parse((string)ht["value"]); } else if(ht[XMLHandler.NODE_NAME] as string == BattleSystemData.REVIVE) { int id = int.Parse((string)ht["id"]); this.system.reviveSetStatus[id] = true; this.system.reviveStatus[id] = int.Parse((string)ht["value"]); } else if(ht[XMLHandler.NODE_NAME] as string == BattleSystemData.STARTSTATUS) { int id = int.Parse((string)ht["id"]); this.system.startSetStatus[id] = true; this.system.startStatus[id] = int.Parse((string)ht["value"]); } else if(ht[XMLHandler.NODE_NAME] as string == BattleSystemData.ENDSTATUS) { int id = int.Parse((string)ht["id"]); this.system.endSetStatus[id] = true; this.system.endStatus[id] = int.Parse((string)ht["value"]); } else if(ht[XMLHandler.NODE_NAME] as string == BattleSystemData.PARTYADVANTAGE) { this.system.partyAdvantage.SetData(ht); } else if(ht[XMLHandler.NODE_NAME] as string == BattleSystemData.ENEMIESADVANTAGE) { this.system.enemiesAdvantage.SetData(ht); } else if(ht[XMLHandler.NODE_NAME] as string == BattleSystemData.PARTYSPOT) { int id = int.Parse((string)ht["id"]); if(id < this.system.partySpot.Length) { this.system.partySpot[id] = VectorHelper.FromHashtable(ht); if(ht.ContainsKey("pax")) { this.system.partySpotPA[id] = VectorHelper.FromHashtable(ht, "pax", "pay", "paz"); } if(ht.ContainsKey("eax")) { this.system.partySpotEA[id] = VectorHelper.FromHashtable(ht, "eax", "eay", "eaz"); } } } else if(ht[XMLHandler.NODE_NAME] as string == BattleSystemData.ENEMYSPOT) { int id = int.Parse((string)ht["id"]); if(id < this.system.enemySpot.Length) { this.system.enemySpot[id] = VectorHelper.FromHashtable(ht); if(ht.ContainsKey("pax")) { this.system.enemySpotPA[id] = VectorHelper.FromHashtable(ht, "pax", "pay", "paz"); } if(ht.ContainsKey("eax")) { this.system.enemySpotEA[id] = VectorHelper.FromHashtable(ht, "eax", "eay", "eaz"); } } } } } } else if(val[XMLHandler.NODE_NAME] as string == BattleSystemData.MENU) { if(val.ContainsKey("dialogueposition")) this.menu.dialoguePosition = int.Parse((string)val["dialogueposition"]); if(val.ContainsKey("targetposition")) this.menu.targetPosition = int.Parse((string)val["targetposition"]); if(val.ContainsKey("skillposition")) this.menu.skillPosition = int.Parse((string)val["skillposition"]); if(val.ContainsKey("itemposition")) this.menu.itemPosition = int.Parse((string)val["itemposition"]); if(val.ContainsKey("showattack")) this.menu.showAttack = bool.Parse((string)val["showattack"]); if(val.ContainsKey("showskills")) this.menu.showSkills = bool.Parse((string)val["showskills"]); if(val.ContainsKey("combineskills")) this.menu.combineSkills = bool.Parse((string)val["combineskills"]); if(val.ContainsKey("showitems")) this.menu.showItems = bool.Parse((string)val["showitems"]); if(val.ContainsKey("combineitems")) this.menu.combineItems = bool.Parse((string)val["combineitems"]); if(val.ContainsKey("showdefend")) this.menu.showDefend = bool.Parse((string)val["showdefend"]); if(val.ContainsKey("showescape")) this.menu.showEscape = bool.Parse((string)val["showescape"]); if(val.ContainsKey("showendturn")) this.menu.showEndTurn = bool.Parse((string)val["showendturn"]); if(val.ContainsKey("attackicon")) this.menu.attackIconName = val["attackicon"] as string; if(val.ContainsKey("skillicon")) this.menu.skillIconName = val["skillicon"] as string; if(val.ContainsKey("itemicon")) this.menu.itemIconName = val["itemicon"] as string; if(val.ContainsKey("defendicon")) this.menu.defendIconName = val["defendicon"] as string; if(val.ContainsKey("escapeicon")) this.menu.escapeIconName = val["escapeicon"] as string; if(val.ContainsKey("drag")) this.menu.enableDrag = true; if(val.ContainsKey("doubleclick")) this.menu.enableDoubleClick = true; if(val.ContainsKey("addback")) this.menu.addBack = true; if(val.ContainsKey("backfirst")) this.menu.backFirst = true; this.menu.mouseTouch.SetData(val); if(val.ContainsKey("order")) this.menu.SetOrder(val["order"] as string); if(val.ContainsKey(XMLHandler.NODES)) { ArrayList s = val[XMLHandler.NODES] as ArrayList; foreach(Hashtable ht in s) { if(ht[XMLHandler.NODE_NAME] as string == BattleSystemData.BACK) { int id = int.Parse((string)ht["id"]); if(id < this.menu.backName.Count) this.menu.backName[id] = (string)ht[XMLHandler.CONTENT]; } else if(ht[XMLHandler.NODE_NAME] as string == BattleSystemData.ATTACK) { int id = int.Parse((string)ht["id"]); if(id < this.menu.attackName.Count) this.menu.attackName[id] = (string)ht[XMLHandler.CONTENT]; } else if(ht[XMLHandler.NODE_NAME] as string == BattleSystemData.SKILL) { int id = int.Parse((string)ht["id"]); if(id < this.menu.skillName.Count) this.menu.skillName[id] = (string)ht[XMLHandler.CONTENT]; } else if(ht[XMLHandler.NODE_NAME] as string == BattleSystemData.ITEM) { int id = int.Parse((string)ht["id"]); if(id < this.menu.itemName.Count) this.menu.itemName[id] = (string)ht[XMLHandler.CONTENT]; } else if(ht[XMLHandler.NODE_NAME] as string == BattleSystemData.DEFEND) { int id = int.Parse((string)ht["id"]); if(id < this.menu.defendName.Count) this.menu.defendName[id] = (string)ht[XMLHandler.CONTENT]; } else if(ht[XMLHandler.NODE_NAME] as string == BattleSystemData.ESCAPE) { int id = int.Parse((string)ht["id"]); if(id < this.menu.escapeName.Count) this.menu.escapeName[id] = (string)ht[XMLHandler.CONTENT]; } else if(ht[XMLHandler.NODE_NAME] as string == BattleSystemData.ENDTURN) { int id = int.Parse((string)ht["id"]); if(id < this.menu.endTurnName.Count) this.menu.endTurnName[id] = (string)ht[XMLHandler.CONTENT]; } else if(ht[XMLHandler.NODE_NAME] as string == BattleSystemData.BACKICON) { this.menu.backIconName = (string)ht[XMLHandler.CONTENT]; } else if(ht[XMLHandler.NODE_NAME] as string == BattleSystemData.ATTACKICON) { this.menu.attackIconName = (string)ht[XMLHandler.CONTENT]; } else if(ht[XMLHandler.NODE_NAME] as string == BattleSystemData.SKILLICON) { this.menu.skillIconName = (string)ht[XMLHandler.CONTENT]; } else if(ht[XMLHandler.NODE_NAME] as string == BattleSystemData.ITEMICON) { this.menu.itemIconName = (string)ht[XMLHandler.CONTENT]; } else if(ht[XMLHandler.NODE_NAME] as string == BattleSystemData.DEFENDICON) { this.menu.defendIconName = (string)ht[XMLHandler.CONTENT]; } else if(ht[XMLHandler.NODE_NAME] as string == BattleSystemData.ESCAPEICON) { this.menu.escapeIconName = (string)ht[XMLHandler.CONTENT]; } else if(ht[XMLHandler.NODE_NAME] as string == BattleSystemData.ENDTURNICON) { this.menu.endTurnIconName = (string)ht[XMLHandler.CONTENT]; } else if(ht[XMLHandler.NODE_NAME] as string == BattleSystemData.CURSOR) { this.menu.useTargetCursor = true; this.menu.cursorPrefabName = ht[XMLHandler.CONTENT] as string; this.menu.cursorOffset.x = float.Parse((string)ht["cox"]); this.menu.cursorOffset.y = float.Parse((string)ht["coy"]); this.menu.cursorOffset.z = float.Parse((string)ht["coz"]); } else if(ht[XMLHandler.NODE_NAME] as string == BattleSystemData.CURSORCHILD) { this.menu.cursorChildName = ht[XMLHandler.CONTENT] as string; } else if(ht[XMLHandler.NODE_NAME] as string == BattleSystemData.TARGET) { this.menu.useTargetMenu = bool.Parse((string)ht["targetmenu"]); this.menu.useTargetBlink = bool.Parse((string)ht["targetblink"]); if(this.menu.useTargetBlink) { if(ht.ContainsKey("fromcurrent")) this.menu.fromCurrent = true; this.menu.blinkChildren = bool.Parse((string)ht["children"]); this.menu.blinkTime = float.Parse((string)ht["time"]); this.menu.blinkInterpolation = (EaseType)System.Enum.Parse(typeof(EaseType), (string)ht["interpolation"]); if(ht.ContainsKey("as")) { this.menu.aBlink = true; this.menu.aStart = float.Parse((string)ht["as"]); this.menu.aEnd = float.Parse((string)ht["ae"]); } if(ht.ContainsKey("rs")) { this.menu.rBlink = true; this.menu.rStart = float.Parse((string)ht["rs"]); this.menu.rEnd = float.Parse((string)ht["re"]); } if(ht.ContainsKey("gs")) { this.menu.gBlink = true; this.menu.gStart = float.Parse((string)ht["gs"]); this.menu.gEnd = float.Parse((string)ht["ge"]); } if(ht.ContainsKey("bs")) { this.menu.bBlink = true; this.menu.bStart = float.Parse((string)ht["bs"]); this.menu.bEnd = float.Parse((string)ht["be"]); } } } } } } else if(val[XMLHandler.NODE_NAME] as string == BattleSystemData.TEXT) { this.showUserDamage = bool.Parse((string)val["showuserdamage"]); if(val.ContainsKey("mounttexts")) this.mountTexts = true; if(val.ContainsKey("bmpos")) { this.showBattleMessage = true; this.battleMessagePosition = int.Parse((string)val["bmpos"]); this.battleMessageShowTime = float.Parse((string)val["bmtime"]); } if(val.ContainsKey("bscolor")) { this.battleStartColor = int.Parse((string)val["bscolor"]); this.battleStartSColor = int.Parse((string)val["bsshadowcolor"]); } if(val.ContainsKey("bvcolor")) { this.battleVictoryColor = int.Parse((string)val["bvcolor"]); this.battleVictorySColor = int.Parse((string)val["bvshadowcolor"]); } if(val.ContainsKey("bdcolor")) { this.battleDefeatColor = int.Parse((string)val["bdcolor"]); this.battleDefeatSColor = int.Parse((string)val["bdshadowcolor"]); } if(val.ContainsKey("becolor")) { this.battleEscapeColor = int.Parse((string)val["becolor"]); this.battleEscapeSColor = int.Parse((string)val["beshadowcolor"]); } if(val.ContainsKey(XMLHandler.NODES)) { ArrayList s = val[XMLHandler.NODES] as ArrayList; foreach(Hashtable ht in s) { if(ht[XMLHandler.NODE_NAME] as string == BattleSystemData.INFO) { this.showInfo = true; this.infoPosition = int.Parse((string)ht["position"]); this.infoShowTime = float.Parse((string)ht["time"]); if(ht.ContainsKey("showskills")) this.showSkills = bool.Parse((string)ht["showskills"]); if(ht.ContainsKey("showitems")) this.showItems = bool.Parse((string)ht["showitems"]); if(ht.ContainsKey("showdefend")) this.showDefend = bool.Parse((string)ht["showdefend"]); if(ht.ContainsKey("showescape")) this.showEscape = bool.Parse((string)ht["showescape"]); if(ht.ContainsKey("showcounter")) this.showCounter = bool.Parse((string)ht["showcounter"]); if(ht.ContainsKey("showstealitem")) this.showStealItem = bool.Parse((string)ht["showstealitem"]); if(ht.ContainsKey("showstealitemfail")) this.showStealItemFail = bool.Parse((string)ht["showstealitemfail"]); if(ht.ContainsKey("showstealmoney")) this.showStealMoney = bool.Parse((string)ht["showstealmoney"]); if(ht.ContainsKey("showstealmoneyfail")) this.showStealMoneyFail = bool.Parse((string)ht["showstealmoneyfail"]); } else if(ht[XMLHandler.NODE_NAME] as string == BattleSystemData.DAMAGE) { DataHolder.StatusValues().AddDamageTextSettings(int.Parse((string)ht["id"]), ht); } else if(ht[XMLHandler.NODE_NAME] as string == BattleSystemData.REFRESH) { DataHolder.StatusValues().AddRefreshTextSettings(int.Parse((string)ht["id"]), ht); } else if(ht[XMLHandler.NODE_NAME] as string == BattleSystemData.EFFECT) { this.effectTextSettings.SetData(ht); } else if(ht[XMLHandler.NODE_NAME] as string == BattleSystemData.MISSSETTINGS) { this.missTextSettings.SetData(ht); } else if(ht[XMLHandler.NODE_NAME] as string == BattleSystemData.MISS) { int id = int.Parse((string)ht["id"]); if(id < this.missTextSettings.text.Length) { this.missTextSettings.text[id] = ht[XMLHandler.CONTENT] as string; } } else if(ht[XMLHandler.NODE_NAME] as string == BattleSystemData.COUNTER) { int id = int.Parse((string)ht["id"]); if(id < this.counterText.Count) this.counterText[id] = ht[XMLHandler.CONTENT]; } else if(ht[XMLHandler.NODE_NAME] as string == BattleSystemData.ALLIES) { int id = int.Parse((string)ht["id"]); if(id < this.allAlliesText.Count) this.allAlliesText[id] = ht[XMLHandler.CONTENT]; } else if(ht[XMLHandler.NODE_NAME] as string == BattleSystemData.ENEMIES) { int id = int.Parse((string)ht["id"]); if(id < this.allEnemiesText.Count) this.allEnemiesText[id] = ht[XMLHandler.CONTENT]; } else if(ht[XMLHandler.NODE_NAME] as string == BattleSystemData.BATTLESTART) { int id = int.Parse((string)ht["id"]); if(id < this.battleStartText.Count) this.battleStartText[id] = ht[XMLHandler.CONTENT]; } else if(ht[XMLHandler.NODE_NAME] as string == BattleSystemData.BATTLEVICTORY) { int id = int.Parse((string)ht["id"]); if(id < this.battleVictoryText.Count) this.battleVictoryText[id] = ht[XMLHandler.CONTENT]; } else if(ht[XMLHandler.NODE_NAME] as string == BattleSystemData.BATTLEDEFEAT) { int id = int.Parse((string)ht["id"]); if(id < this.battleDefeatText.Count) this.battleDefeatText[id] = ht[XMLHandler.CONTENT]; } else if(ht[XMLHandler.NODE_NAME] as string == BattleSystemData.BATTLEESCAPE) { int id = int.Parse((string)ht["id"]); if(id < this.battleEscapeText.Count) this.battleEscapeText[id] = ht[XMLHandler.CONTENT]; } else if(ht[XMLHandler.NODE_NAME] as string == BattleSystemData.SKIN) { this.textSkinName = ht[XMLHandler.CONTENT] as string; } else if(ht[XMLHandler.NODE_NAME] as string == BattleSystemData.CASTCANCEL) { int id = int.Parse((string)ht["id"]); if(id < this.castCancelTextSettings.text.Length) { this.castCancelTextSettings.text[id] = ht[XMLHandler.CONTENT] as string; } } else if(ht[XMLHandler.NODE_NAME] as string == BattleSystemData.LEVELUP) { int id = int.Parse((string)ht["id"]); if(id < this.levelUpTextSettings.text.Length) { this.levelUpTextSettings.text[id] = ht[XMLHandler.CONTENT] as string; } } else if(ht[XMLHandler.NODE_NAME] as string == BattleSystemData.CASTCANCELSETTINGS) { this.castCancelTextSettings.SetData(ht); } else if(ht[XMLHandler.NODE_NAME] as string == BattleSystemData.LEVELUPSETTINGS) { this.levelUpTextSettings.SetData(ht); } else if(ht[XMLHandler.NODE_NAME] as string == BattleSystemData.CLASSLEVELUPSETTINGS) { this.classLevelUpTextSettings.SetData(ht); } else if(ht[XMLHandler.NODE_NAME] as string == BattleSystemData.BLOCKSETTINGS) { this.blockTextSettings.SetData(ht); } else if(ht[XMLHandler.NODE_NAME] as string == BattleSystemData.STEALITEM) { int id = int.Parse((string)ht["id"]); if(id < this.stealItemText.Count) this.stealItemText[id] = ht[XMLHandler.CONTENT]; } else if(ht[XMLHandler.NODE_NAME] as string == BattleSystemData.STEALITEMFAIL) { int id = int.Parse((string)ht["id"]); if(id < this.stealItemFailText.Count) this.stealItemFailText[id] = ht[XMLHandler.CONTENT]; } else if(ht[XMLHandler.NODE_NAME] as string == BattleSystemData.STEALMONEY) { int id = int.Parse((string)ht["id"]); if(id < this.stealMoneyText.Count) this.stealMoneyText[id] = ht[XMLHandler.CONTENT]; } else if(ht[XMLHandler.NODE_NAME] as string == BattleSystemData.STEALMONEYFAIL) { int id = int.Parse((string)ht["id"]); if(id < this.stealMoneyFailText.Count) this.stealMoneyFailText[id] = ht[XMLHandler.CONTENT]; } } } } else if(val[XMLHandler.NODE_NAME] as string == BattleSystemData.BATTLEEND) { this.end.SetData(val); } else if(val[XMLHandler.NODE_NAME] as string == BattleSystemData.BATTLECAM) { this.cam.SetData(val); } else if(val[XMLHandler.NODE_NAME] as string == BattleSystemData.BATTLECONTROL) { this.control.SetData(val); } } } } } } }