public StoryInfo(string line) { CommaStringParser commaParser = new CommaStringParser(line); this.storyName = commaParser.Consume(); this.dialogueName = commaParser.Consume(); }
public SkillColumnInfo(string line) { CommaStringParser commaParser = new CommaStringParser(line); this.unitName = commaParser.Consume(); this.column1Name = commaParser.Consume(); this.column2Name = commaParser.Consume(); this.column3Name = commaParser.Consume(); }
public UnitInfo(string data) { CommaStringParser commaParser = new CommaStringParser(data); this.name = commaParser.Consume(); this.nameInCode = commaParser.Consume(); this.side = commaParser.ConsumeEnum <Side>(); int x = commaParser.ConsumeInt(); int y = commaParser.ConsumeInt(); this.initPosition = new Vector2(x, y); this.initDirection = commaParser.ConsumeEnum <Direction>(); this.baseHealth = commaParser.ConsumeInt(); this.basePower = commaParser.ConsumeInt(); this.baseDefense = commaParser.ConsumeInt(); this.baseResistance = commaParser.ConsumeInt(); this.baseDexturity = commaParser.ConsumeInt(); this.unitClass = commaParser.ConsumeEnum <UnitClass>(); this.element = commaParser.ConsumeEnum <Element>(); this.celestial = commaParser.ConsumeEnum <Celestial>(); }
public SkillInfo(string data) { CommaStringParser commaParser = new CommaStringParser(data); this.owner = commaParser.Consume(); this.requireLevel = commaParser.ConsumeInt(); string name = commaParser.Consume(); int level = 0; // default level : 0 this.column = commaParser.ConsumeInt(); string originRequireAPString = commaParser.Consume(); string[] requireAPStringArray = originRequireAPString.Split(' '); int[] requireAPArray = new int[5]; for (int i = 0; i < 5; i++) { int parsed = 0; try { parsed = Int32.Parse(requireAPStringArray[i]); } catch { Debug.LogWarning("Parse error in requireAPs : " + originRequireAPString); parsed = -1; } requireAPArray[i] = parsed; } string originCooldownString = commaParser.Consume(); string[] cooldownStringArray = originCooldownString.Split(' '); int[] cooldownArray = new int[5]; for (int i = 0; i < 5; i++) { int parsed = 0; try { parsed = Int32.Parse(cooldownStringArray[i]); } catch { Debug.LogWarning("Parse error in requireAPs : " + originCooldownString); parsed = -1; } cooldownArray[i] = parsed; } // parsing coefficients for damage calculation string originStatTypeString = commaParser.Consume(); string[] statTypeArray = originStatTypeString.Split('/'); string originPowerFactorString = commaParser.Consume(); string[] powerFactorStringArray = originPowerFactorString.Split('/'); float[][] powerFactorArrayArray = new float[powerFactorStringArray.Length][]; for (int i = 0; i < powerFactorStringArray.Length; i++) { powerFactorArrayArray[i] = new float[5]; string[] powerFactorString = powerFactorStringArray[i].Split(' '); for (int j = 0; j < 5; j++) { float parsed = 0.0f; try { parsed = Convert.ToSingle(powerFactorString[j]); } catch { Debug.LogWarning("Parse error in powerFactors : " + originRequireAPString); parsed = -1; } powerFactorArrayArray[i][j] = parsed; } } Dictionary <string, float[]> powerFactor = new Dictionary <string, float[]>(); for (int i = 0; i < statTypeArray.Length; i++) { powerFactor.Add(statTypeArray[i], powerFactorArrayArray[i]); } SkillType skillType = commaParser.ConsumeEnum <SkillType>(); RangeForm firstRangeForm = commaParser.ConsumeEnum <RangeForm>(); int firstMinReach = commaParser.ConsumeInt(); int firstMaxReach = commaParser.ConsumeInt(); int firstWidth = commaParser.ConsumeInt(); RangeForm secondRangeForm = commaParser.ConsumeEnum <RangeForm>(); int secondMinReach = commaParser.ConsumeInt(); int secondMaxReach = commaParser.ConsumeInt(); int secondWidth = commaParser.ConsumeInt(); SkillApplyType skillApplyType = commaParser.ConsumeEnum <SkillApplyType>(); string originPenetrationString = commaParser.Consume(); string[] penetrationStringArray = originPenetrationString.Split(' '); float[] penetrationArray = new float[5]; for (int i = 0; i < 5; i++) { int parsed = 0; try { parsed = Int32.Parse(penetrationStringArray[i]); } catch { Debug.LogWarning("Parse error in penetrations : " + originPenetrationString); parsed = -1; } penetrationArray[i] = parsed; } string effectName = commaParser.Consume(); EffectVisualType effectVisualType = commaParser.ConsumeEnum <EffectVisualType>(); EffectMoveType effectMoveType = commaParser.ConsumeEnum <EffectMoveType>(); this.skill = new Skill(name, level, requireAPArray, cooldownArray, powerFactor, skillType, firstRangeForm, firstMinReach, firstMaxReach, firstWidth, secondRangeForm, secondMinReach, secondMaxReach, secondWidth, skillApplyType, penetrationArray, effectName, effectVisualType, effectMoveType); }
public StatusEffectInfo(string data) { Debug.Log(data); CommaStringParser commaParser = new CommaStringParser(data); this.owner = commaParser.Consume(); this.skillName = commaParser.Consume(); string name = commaParser.Consume(); int level = 0; StatusEffectType statusEffectType = commaParser.ConsumeEnum <StatusEffectType>(); bool isBuff = commaParser.ConsumeBool(); bool isInfinite = commaParser.ConsumeBool(); bool isStackable = commaParser.ConsumeBool(); bool isRemovable = commaParser.ConsumeBool(); string originDegreeString = commaParser.Consume(); string[] degreeStringArray = originDegreeString.Split(' '); float[] degreeArray = new float[5]; for (int i = 0; i < 5; i++) { float parsed = 0.0f; try { parsed = Convert.ToSingle(degreeStringArray[i]); } catch { Debug.LogWarning("Parse error in degrees : " + originDegreeString); parsed = -1; } degreeArray[i] = parsed; } Stat amountStat = commaParser.ConsumeEnum <Stat>(); string originAmountFactorString = commaParser.Consume(); string[] amountFactorStringArray = originAmountFactorString.Split(' '); float[] amountFactorArray = new float[5]; for (int i = 0; i < 5; i++) { float parsed = 0; try { parsed = Convert.ToSingle(amountFactorStringArray[i]); } catch { Debug.LogWarning("Parse error in amountFactors : " + originAmountFactorString); parsed = -1; } amountFactorArray[i] = parsed; } int remainAmount = 0; // 남은 보호막 체크용 int remainPhase = commaParser.ConsumeInt(); int remainStack = commaParser.ConsumeInt(); int cooldown = commaParser.ConsumeInt(); bool toBeRemoved = false; string effectName = commaParser.Consume(); EffectVisualType effectVisualType = commaParser.ConsumeEnum <EffectVisualType>(); EffectMoveType effectMoveType = commaParser.ConsumeEnum <EffectMoveType>(); this.statusEffect = new StatusEffect(name, level, statusEffectType, isBuff, isInfinite, isStackable, isRemovable, degreeArray, amountStat, amountFactorArray, remainAmount, remainPhase, remainStack, cooldown, toBeRemoved, effectName, effectVisualType, effectMoveType); }
public BattleEndTrigger(string data) { CommaStringParser commaParser = new CommaStringParser(data); result = commaParser.ConsumeEnum <BattleResult>(); triggerNumber = commaParser.ConsumeInt(); if (triggerNumber == 5 || triggerNumber == 6 || triggerNumber == 9 || triggerNumber == 10) { return; } if (triggerNumber == 1) { maxPhase = commaParser.ConsumeInt(); } else if (triggerNumber == 2 || triggerNumber == 3 || triggerNumber == 4) { targetUnitNames = new List <string>(); int numberOfName = commaParser.ConsumeInt(); for (int i = 0; i < numberOfName; i++) { string targetUnitName = commaParser.Consume(); targetUnitNames.Add(targetUnitName); } if (triggerNumber == 3) { minNumberOfTargetUnit = commaParser.ConsumeInt(); } } else if (triggerNumber == 7) { minNumberOfAlly = commaParser.ConsumeInt(); } else if (triggerNumber == 8) { minNumberOfEnemy = commaParser.ConsumeInt(); } else if (triggerNumber > 10 && triggerNumber < 20) { targetTiles = new List <Vector2>(); int numberOfTiles = commaParser.ConsumeInt(); for (int i = 0; i < numberOfTiles; i++) { int x = commaParser.ConsumeInt(); int y = commaParser.ConsumeInt(); Vector2 position = new Vector2(x, y); targetTiles.Add(position); } if (triggerNumber == 11 || triggerNumber == 12 || triggerNumber == 13) { reachedTargetUnitNames = new List <string>(); int numberOfName = commaParser.ConsumeInt(); for (int i = 0; i < numberOfName; i++) { string targetUnitName = commaParser.Consume(); reachedTargetUnitNames.Add(targetUnitName); } if (triggerNumber == 12) { minNumberOfReachedTargetUnit = commaParser.ConsumeInt(); } } else if (triggerNumber == 16) { minNumberOfReachedAlly = commaParser.ConsumeInt(); } else if (triggerNumber == 17) { minNumberOfReachedEnemy = commaParser.ConsumeInt(); } } }