Skip to content

Commit 353cb96

Browse files
author
Ian Gonzalez Hermosillo
committed
initial paint also properly reversed
1 parent c82375c commit 353cb96

File tree

1 file changed

+14
-1
lines changed

1 file changed

+14
-1
lines changed

engine/src/main/battlecode/world/GameMapIO.java

Lines changed: 14 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -236,7 +236,7 @@ public static LiveMap deserialize(battlecode.schema.GameMap raw, boolean teamsRe
236236
int[] patternArray = new int[4];
237237
for (int i = 0; i < wallArray.length; i++) {
238238
wallArray[i] = raw.walls(i);
239-
paintArray[i] = raw.paint(i);
239+
paintArray[i] = possiblyReversePaint(raw.paint(i), teamsReversed);
240240
}
241241
for (int i = 0; i < patternArray.length; i++){
242242
patternArray[i] = raw.paintPatterns(i);
@@ -365,6 +365,19 @@ private static void initInitialBodiesFromSchemaBodyTable(InitialBodyTable bodyTa
365365
}
366366
}
367367

368+
// No color = 0, Team A color 1 = 1, Team A color 2 = 2, Team B color 1 = 3, Team B color 2 = 4
369+
private static byte possiblyReversePaint(byte originalPaint, boolean teamsReversed){
370+
if (!teamsReversed)
371+
return originalPaint;
372+
switch (originalPaint){
373+
case 1: return 3;
374+
case 2: return 4;
375+
case 3: return 1;
376+
case 4: return 2;
377+
default: return originalPaint;
378+
}
379+
}
380+
368381
private static int createSpawnActionsVector(FlatBufferBuilder builder, ArrayList<Integer> ids, ArrayList<Integer> xs, ArrayList<Integer> ys, ArrayList<Byte> teams, ArrayList<Byte> types){
369382
InitialBodyTable.startSpawnActionsVector(builder, ids.size());
370383
for (int i = 0; i < ids.size(); i++){

0 commit comments

Comments
 (0)