Advertisement
Guest User

Untitled

a guest
Sep 19th, 2017
74
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.19 KB | None | 0 0
  1. package MapClasses;
  2. import Classes.*;
  3. import org.newdawn.slick.*;
  4.  
  5. public class MapBase
  6. {
  7. //Units
  8. Unit[] units = new Unit[128];
  9.  
  10. //Rounds; adds one each time all units are run through in initiative
  11. int round = 0;
  12. //Turns
  13. int turns = 0;
  14.  
  15. int X;
  16. int Y;
  17.  
  18. TileManager tm;
  19. public MapBase(int x, int y)
  20. {
  21. tm = new TileManager(x, y);
  22. X = x;
  23. Y = y;
  24. }
  25.  
  26. public void defineUnit(int UnitPosInArray, int tilenum, float Heightt, float Move,
  27. float HP, float MP, float WS, float BS, float MS, float S,
  28. float T, float Ag, float Int, float WP, float Cha, float LUK,
  29. float Mov, long randseed)
  30. {
  31. units[UnitPosInArray] = new Unit(tm, tilenum, Heightt, Move, HP, MP, WS, BS, MS, S, T, Ag,
  32. Int, WP, Cha, LUK, Mov, randseed);
  33. }
  34. boolean IsItYourTurn()
  35. {
  36. if(units[turns].isTurn)
  37. {
  38. return true;
  39. }
  40. else
  41. {
  42. return false;
  43. }
  44. }
  45.  
  46. public void TurnChange()
  47. {
  48. if(turns < getNumUnits(units) - 1)
  49. {
  50. turns++;
  51. }
  52. else
  53. {
  54. turns = 0;
  55. round++;
  56. }
  57. if(units[turns] != null)
  58. {
  59. units[turns].isTurn = true;
  60. if(turns > 0)
  61. {
  62. units[turns-1].isTurn = false;
  63. }
  64. }
  65. }
  66. public Unit[] sortUnitInit()
  67. {
  68.  
  69. float min = units[getNumUnits(units)-1].initiative;
  70. float max = units[0].initiative;
  71. float prevmax = max;
  72. for(int j =0, l = 0; j < getNumUnits(units); j++)
  73. {
  74. units[l].initiative = max;
  75. if(prevmax < max && prevmax > min)
  76. {
  77. units[j].initiative = prevmax;
  78. }
  79. units[getNumUnits(units)-1].initiative = min;
  80. for(int ex = 0; ex < getNumUnits(units); ex++)
  81. {
  82. if(min > units[ex].initiative)
  83. {
  84. min = units[ex].initiative;
  85. }
  86. if(max < units[ex].initiative)
  87. {
  88. prevmax = max;
  89. //Have to make the prevmax into the next lowest number!!
  90. max = units[ex].initiative;
  91. }
  92. else if(prevmax > units[ex].initiative)
  93. {
  94. prevmax = units[ex].initiative;
  95. }
  96. }
  97. for(int number = 0; number < getNumUnits(units); number++)
  98. {
  99. System.out.println(number + " " + units[number].initiative);
  100. }
  101. }
  102.  
  103.  
  104. return units;
  105. }
  106.  
  107.  
  108. int getNumUnits(Unit[] unittt)
  109. {
  110. int numUnits = 0;
  111. int count = 0;
  112. while(unittt[count] != null)
  113. {
  114. count++;
  115. numUnits++;
  116. }
  117. return numUnits;
  118. }
  119.  
  120.  
  121. public void SkipTurn()
  122. {
  123. turns++;
  124. }
  125. public void rollUnitInit ()
  126. {
  127. int j = 0;
  128. while(units[j] != null)
  129. {
  130. units[j].rollInitiative();
  131. j++;
  132.  
  133. }
  134.  
  135.  
  136. int p = 1;
  137. if(getNumUnits(units) < 21)
  138. {
  139. while(units[p-1] != null && units[p] != null && units[p-1].initiative == units[p].initiative)
  140. {
  141. units[p].rollInitiative();
  142. p++;
  143. }
  144. }
  145.  
  146. else
  147. {
  148. while(units[p-1] != null && units[p] != null && units[p-1].initiative == units[p].initiative)
  149. {
  150. units[p].plusInit();
  151. p++;
  152. }
  153. }
  154.  
  155.  
  156. }
  157. public void TileWholeMap(GameContainer gc)
  158. {
  159.  
  160. tm.generateTileRow(5, 2);
  161. for(int why = 4; why < gc.getHeight(); why+=4)
  162. {
  163. tm.generateTileRow(0, why, 5, 2);
  164. }
  165. }
  166. public float getUnitX(int UnitPosInArray)
  167. {
  168. return units[UnitPosInArray].x;
  169. }
  170.  
  171. public float getUnitY(int UnitPosInArray)
  172. {
  173. return units[UnitPosInArray].y;
  174. }
  175.  
  176. public void moveUnit(String direction)
  177. {
  178. if(direction.equals("LEFT"))
  179. {
  180. units[turns].moveUnitLeft(X);
  181. }
  182. else if(direction.equals("RIGHT"))
  183. {
  184. units[turns].moveUnitRight(X);
  185. }
  186. else if(direction.equals("UP"))
  187. {
  188. units[turns].moveUnitUp(X, Y);
  189. }
  190. else if(direction.equals("DOWN"))
  191. {
  192. units[turns].moveUnitDown(X, Y);
  193. }
  194. }
  195. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement