internal static KeyValuePair <List <int>, List <int> > CalculateHealing(LUA.LuaAbilityInfo labii) { return(new KeyValuePair <List <int>, List <int> >(new List <int> { labii.minDmg, labii.maxDmg }, new List <int> { 0, 0 })); }
public void GenerateTurn(BaseCharacter bs, MapZone zone, List <BasicTile> bt) { bAttackedThisCT = false; abiUsedInfo = null; character = bs; turns.Clear(); characterArea.Clear(); int temp = bs.trueSTATChart().currentPassiveStats[(int)STATChart.PASSIVESTATS.AP]; int maxMoves = bs.trueSTATChart().currentPassiveStats[(int)STATChart.PASSIVESTATS.MOB]; for (int i = 1; i < temp; i++) { turns.Add(new TurnInfo(maxMoves)); characterArea.Add(MapListUtility.returnMapRadius((i - 1) * maxMoves, i * maxMoves, bt, bs)); } }
/// <summary> /// For enemy radius preview /// </summary> /// <param name="bt"></param> public void ReGenerateTurn2(List <BasicTile> bt) { bAttackedThisCT = false; abiUsedInfo = null; turns.Clear(); characterArea.Clear(); int temp = character.trueSTATChart().currentPassiveStats[(int)STATChart.PASSIVESTATS.AP]; int maxMoves = character.trueSTATChart().currentPassiveStats[(int)STATChart.PASSIVESTATS.MOB]; for (int i = 1; i < temp + 1; i++) { turns.Add(new TurnInfo(maxMoves)); if (i > 1) { for (int j = 1; j < 2; j++) { List <BasicTile> list = MapListUtility.returnValidMapRadius2((i - 1) * maxMoves + maxMoves, bt, character.position).Except(characterArea[i - 1 - j]).ToList(); characterArea.Add(list); } } else { characterArea.Add(MapListUtility.returnValidMapRadius2((i - 1) * maxMoves + maxMoves, bt, character.position)); } } try { var tempT = bt.Find(t => t.positionGrid.ToPoint() == (character.position / 64).ToPoint()); if (tempT != null && !characterArea[0].Contains(tempT)) { characterArea[0].Add(tempT); } if (characterArea[0].Count == 0) { characterArea[0].Add(bt.Find(t => t.mapPosition.Location.ToVector2() == character.position)); } } catch { } }
public void ReGenerateTurn(List <BasicTile> bt) { bAttackedThisCT = false; abiUsedInfo = null; turns.Clear(); characterArea.Clear(); int temp = character.trueSTATChart().currentPassiveStats[(int)STATChart.PASSIVESTATS.AP]; int maxMoves = character.trueSTATChart().currentPassiveStats[(int)STATChart.PASSIVESTATS.MOB]; for (int i = 1; i < temp + 1; i++) { turns.Add(new TurnInfo(maxMoves)); if (i > 1) { for (int j = 1; j < 2; j++) { List <BasicTile> list = MapListUtility.returnValidMapRadius((i - 1) * maxMoves + maxMoves, bt, character.position).Except(characterArea[i - 1 - j]).ToList(); characterArea.Add(list); } } else { characterArea.Add(MapListUtility.returnValidMapRadius((i - 1) * maxMoves + maxMoves, bt, character.position)); } } try { var tempT = bt.Find(t => t.positionGrid.ToPoint() == (character.position / 64).ToPoint()); if (tempT != null && !characterArea[0].Contains(tempT)) { characterArea[0].Add(tempT); } if (characterArea[0].Count == 0) { characterArea[0].Add(bt.Find(t => t.mapPosition.Location.ToVector2() == character.position)); } } catch { } bool bStuffToAdjust = false; List <KeyValuePair <BasicTile, int> > allUniqueTiles = new List <KeyValuePair <BasicTile, int> >(); List <KeyValuePair <BasicTile, int> > duplicates = new List <KeyValuePair <BasicTile, int> >(); for (int i = 0; i < characterArea.Count; i++) { for (int j = 0; j < characterArea[i].Count; j++) { if (allUniqueTiles.Find(t => t.Key == characterArea[i][j]).Equals(default(KeyValuePair <BasicTile, int>))) { allUniqueTiles.Add(new KeyValuePair <BasicTile, int>(characterArea[i][j], i)); } else { bStuffToAdjust = true; duplicates.Add(new KeyValuePair <BasicTile, int>(characterArea[i][j], i)); } } } if (bStuffToAdjust) { for (int i = 0; i < duplicates.Count; i++) { characterArea[duplicates[i].Value].Remove(duplicates[i].Key); } } }