Compiled from "GamePanel.java"
public class agolf.game.GamePanel extends java.awt.Panel {
  private agolf.GameContainer gameContainer;

  private int width;

  private int height;

  private agolf.game.PlayerInfoPanel playerInfoPanel;

  private agolf.game.GameCanvas gameCanvas;

  private agolf.game.ChatPanel chatPanel;

  private agolf.game.TrackInfoPanel trackInfoPanel;

  private agolf.game.GameControlPanel gameControlPanel;

  protected int state;

  private int playerCount;

  private boolean isSinglePlayerGame;

  private boolean aBoolean363;

  private long aLong364;

  private final java.lang.Object canStrokeLock;

  private boolean isWaitingForTurnStart;

  public agolf.game.GamePanel(agolf.GameContainer, int, int, java.awt.Image);
    Code:
       0: aload_0
       1: invokespecial #1                  // Method java/awt/Panel."<init>":()V
       4: aload_0
       5: aload_1
       6: putfield      #7                  // Field gameContainer:Lagolf/GameContainer;
       9: aload_0
      10: iload_2
      11: putfield      #13                 // Field width:I
      14: aload_0
      15: iload_3
      16: putfield      #17                 // Field height:I
      19: aload_0
      20: iload_2
      21: iload_3
      22: invokevirtual #20                 // Method setSize:(II)V
      25: aload_0
      26: aload         4
      28: invokevirtual #24                 // Method create:(Ljava/awt/Image;)V
      31: aload_0
      32: iconst_1
      33: putfield      #28                 // Field aBoolean363:Z
      36: aload_0
      37: new           #32                 // class java/lang/Object
      40: dup
      41: invokespecial #34                 // Method java/lang/Object."<init>":()V
      44: putfield      #35                 // Field canStrokeLock:Ljava/lang/Object;
      47: aload_0
      48: iconst_m1
      49: putfield      #39                 // Field state:I
      52: aload_0
      53: iconst_0
      54: invokevirtual #42                 // Method setState:(I)V
      57: return

  public void addNotify();
    Code:
       0: aload_0
       1: invokespecial #46                 // Method java/awt/Panel.addNotify:()V
       4: aload_0
       5: invokevirtual #49                 // Method repaint:()V
       8: return

  public void paint(java.awt.Graphics);
    Code:
       0: aload_0
       1: aload_1
       2: invokevirtual #52                 // Method update:(Ljava/awt/Graphics;)V
       5: return

  public void update(java.awt.Graphics);
    Code:
       0: aload_1
       1: getstatic     #56                 // Field agolf/GolfGameFrame.colourGameBackground:Ljava/awt/Color;
       4: invokevirtual #62                 // Method java/awt/Graphics.setColor:(Ljava/awt/Color;)V
       7: aload_1
       8: iconst_0
       9: iconst_0
      10: aload_0
      11: getfield      #13                 // Field width:I
      14: aload_0
      15: getfield      #17                 // Field height:I
      18: invokevirtual #68                 // Method java/awt/Graphics.fillRect:(IIII)V
      21: return

  public void handlePacket(java.lang.String[]);
    Code:
       0: aload_1
       1: iconst_1
       2: aaload
       3: astore_2
       4: iconst_m1
       5: istore_3
       6: aload_2
       7: invokevirtual #72                 // Method java/lang/String.hashCode:()I
      10: lookupswitch  { // 17
           -2128329761: 300
           -1768527968: 156
           -1655327895: 345
           -1636501278: 330
           -1553819095: 285
           -1054613196: 198
            -493567566: 184
                  3183: 255
                100571: 390
                113643: 240
               3267882: 212
               3433459: 226
               3497709: 375
             109757538: 270
             131252170: 170
             690818081: 315
            1333596600: 360
               default: 402
          }
     156: aload_2
     157: ldc           #78                 // String gameinfo
     159: invokevirtual #80                 // Method java/lang/String.equals:(Ljava/lang/Object;)Z
     162: ifeq          402
     165: iconst_0
     166: istore_3
     167: goto          402
     170: aload_2
     171: ldc           #84                 // String scoringmulti
     173: invokevirtual #80                 // Method java/lang/String.equals:(Ljava/lang/Object;)Z
     176: ifeq          402
     179: iconst_1
     180: istore_3
     181: goto          402
     184: aload_2
     185: ldc           #86                 // String players
     187: invokevirtual #80                 // Method java/lang/String.equals:(Ljava/lang/Object;)Z
     190: ifeq          402
     193: iconst_2
     194: istore_3
     195: goto          402
     198: aload_2
     199: ldc           #88                 // String owninfo
     201: invokevirtual #80                 // Method java/lang/String.equals:(Ljava/lang/Object;)Z
     204: ifeq          402
     207: iconst_3
     208: istore_3
     209: goto          402
     212: aload_2
     213: ldc           #90                 // String join
     215: invokevirtual #80                 // Method java/lang/String.equals:(Ljava/lang/Object;)Z
     218: ifeq          402
     221: iconst_4
     222: istore_3
     223: goto          402
     226: aload_2
     227: ldc           #92                 // String part
     229: invokevirtual #80                 // Method java/lang/String.equals:(Ljava/lang/Object;)Z
     232: ifeq          402
     235: iconst_5
     236: istore_3
     237: goto          402
     240: aload_2
     241: ldc           #94                 // String say
     243: invokevirtual #80                 // Method java/lang/String.equals:(Ljava/lang/Object;)Z
     246: ifeq          402
     249: bipush        6
     251: istore_3
     252: goto          402
     255: aload_2
     256: ldc           #96                 // String cr
     258: invokevirtual #80                 // Method java/lang/String.equals:(Ljava/lang/Object;)Z
     261: ifeq          402
     264: bipush        7
     266: istore_3
     267: goto          402
     270: aload_2
     271: ldc           #98                 // String start
     273: invokevirtual #80                 // Method java/lang/String.equals:(Ljava/lang/Object;)Z
     276: ifeq          402
     279: bipush        8
     281: istore_3
     282: goto          402
     285: aload_2
     286: ldc           #100                // String starttrack
     288: invokevirtual #80                 // Method java/lang/String.equals:(Ljava/lang/Object;)Z
     291: ifeq          402
     294: bipush        9
     296: istore_3
     297: goto          402
     300: aload_2
     301: ldc           #102                // String startturn
     303: invokevirtual #80                 // Method java/lang/String.equals:(Ljava/lang/Object;)Z
     306: ifeq          402
     309: bipush        10
     311: istore_3
     312: goto          402
     315: aload_2
     316: ldc           #104                // String beginstroke
     318: invokevirtual #80                 // Method java/lang/String.equals:(Ljava/lang/Object;)Z
     321: ifeq          402
     324: bipush        11
     326: istore_3
     327: goto          402
     330: aload_2
     331: ldc           #106                // String changescore
     333: invokevirtual #80                 // Method java/lang/String.equals:(Ljava/lang/Object;)Z
     336: ifeq          402
     339: bipush        12
     341: istore_3
     342: goto          402
     345: aload_2
     346: ldc           #108                // String voteskip
     348: invokevirtual #80                 // Method java/lang/String.equals:(Ljava/lang/Object;)Z
     351: ifeq          402
     354: bipush        13
     356: istore_3
     357: goto          402
     360: aload_2
     361: ldc           #110                // String resetvoteskip
     363: invokevirtual #80                 // Method java/lang/String.equals:(Ljava/lang/Object;)Z
     366: ifeq          402
     369: bipush        14
     371: istore_3
     372: goto          402
     375: aload_2
     376: ldc           #112                // String rfng
     378: invokevirtual #80                 // Method java/lang/String.equals:(Ljava/lang/Object;)Z
     381: ifeq          402
     384: bipush        15
     386: istore_3
     387: goto          402
     390: aload_2
     391: ldc           #114                // String end
     393: invokevirtual #80                 // Method java/lang/String.equals:(Ljava/lang/Object;)Z
     396: ifeq          402
     399: bipush        16
     401: istore_3
     402: iload_3
     403: tableswitch   { // 0 to 16
                     0: 484
                     1: 1181
                     2: 1235
                     3: 1337
                     4: 1403
                     5: 1542
                     6: 1639
                     7: 1671
                     8: 1785
                     9: 1889
                    10: 2372
                    11: 2467
                    12: 2518
                    13: 2578
                    14: 2594
                    15: 2628
                    16: 2644
               default: 2777
          }
     484: aload_1
     485: iconst_2
     486: aaload
     487: astore        4
     489: aload_1
     490: iconst_3
     491: aaload
     492: ldc           #116                // String t
     494: invokevirtual #80                 // Method java/lang/String.equals:(Ljava/lang/Object;)Z
     497: istore        5
     499: aload_1
     500: iconst_4
     501: aaload
     502: invokestatic  #118                // Method java/lang/Integer.parseInt:(Ljava/lang/String;)I
     505: istore        6
     507: aload_0
     508: aload_1
     509: iconst_5
     510: aaload
     511: invokestatic  #118                // Method java/lang/Integer.parseInt:(Ljava/lang/String;)I
     514: putfield      #124                // Field playerCount:I
     517: aload_1
     518: bipush        6
     520: aaload
     521: invokestatic  #118                // Method java/lang/Integer.parseInt:(Ljava/lang/String;)I
     524: istore        7
     526: aload_1
     527: bipush        7
     529: aaload
     530: invokestatic  #118                // Method java/lang/Integer.parseInt:(Ljava/lang/String;)I
     533: istore        8
     535: aload_1
     536: bipush        8
     538: aaload
     539: invokestatic  #118                // Method java/lang/Integer.parseInt:(Ljava/lang/String;)I
     542: istore        9
     544: aload_1
     545: bipush        9
     547: aaload
     548: invokestatic  #118                // Method java/lang/Integer.parseInt:(Ljava/lang/String;)I
     551: istore        10
     553: aload_1
     554: bipush        10
     556: aaload
     557: invokestatic  #118                // Method java/lang/Integer.parseInt:(Ljava/lang/String;)I
     560: istore        11
     562: aload_1
     563: bipush        11
     565: aaload
     566: invokestatic  #118                // Method java/lang/Integer.parseInt:(Ljava/lang/String;)I
     569: istore        12
     571: aload_1
     572: bipush        12
     574: aaload
     575: invokestatic  #118                // Method java/lang/Integer.parseInt:(Ljava/lang/String;)I
     578: istore        13
     580: aload_1
     581: bipush        13
     583: aaload
     584: invokestatic  #118                // Method java/lang/Integer.parseInt:(Ljava/lang/String;)I
     587: istore        14
     589: aload_0
     590: aload_1
     591: bipush        14
     593: aaload
     594: ldc           #116                // String t
     596: invokevirtual #80                 // Method java/lang/String.equals:(Ljava/lang/Object;)Z
     599: putfield      #127                // Field isSinglePlayerGame:Z
     602: iconst_0
     603: istore        15
     605: aload_0
     606: getfield      #7                  // Field gameContainer:Lagolf/GameContainer;
     609: getfield      #130                // Field agolf/GameContainer.synchronizedTrackTestMode:Lagolf/SynchronizedBool;
     612: invokevirtual #136                // Method agolf/SynchronizedBool.get:()Z
     615: ifeq          621
     618: iconst_1
     619: istore        15
     621: aload_0
     622: getfield      #124                // Field playerCount:I
     625: iconst_1
     626: if_icmple     632
     629: iconst_2
     630: istore        15
     632: aload_0
     633: iload         15
     635: invokevirtual #142                // Method addMultiPlayerPanels:(I)V
     638: aload_0
     639: getfield      #145                // Field playerInfoPanel:Lagolf/game/PlayerInfoPanel;
     642: aload_0
     643: getfield      #124                // Field playerCount:I
     646: iload         7
     648: iload         9
     650: iload         10
     652: iload         13
     654: invokevirtual #149                // Method agolf/game/PlayerInfoPanel.init:(IIIII)V
     657: aload_0
     658: getfield      #155                // Field trackInfoPanel:Lagolf/game/TrackInfoPanel;
     661: iload         7
     663: invokevirtual #159                // Method agolf/game/TrackInfoPanel.setNumTracks:(I)V
     666: aload_0
     667: getfield      #164                // Field gameControlPanel:Lagolf/game/GameControlPanel;
     670: aload_0
     671: getfield      #124                // Field playerCount:I
     674: invokevirtual #168                // Method agolf/game/GameControlPanel.setPlayerCount:(I)V
     677: aload_0
     678: getfield      #173                // Field gameCanvas:Lagolf/game/GameCanvas;
     681: aload_0
     682: getfield      #124                // Field playerCount:I
     685: iload         11
     687: iload         12
     689: invokevirtual #177                // Method agolf/game/GameCanvas.init:(III)V
     692: iload         15
     694: iconst_2
     695: if_icmpne     1178
     698: ldc           #182                // String
     700: astore        16
     702: iload         5
     704: ifeq          729
     707: aload_0
     708: getfield      #7                  // Field gameContainer:Lagolf/GameContainer;
     711: getfield      #184                // Field agolf/GameContainer.textManager:Lcom/aapeli/client/TextManager;
     714: ldc           #188                // String GameChat_GS_Password
     716: invokevirtual #190                // Method com/aapeli/client/TextManager.getText:(Ljava/lang/String;)Ljava/lang/String;
     719: invokedynamic #196,  0            // InvokeDynamic #0:makeConcatWithConstants:(Ljava/lang/String;)Ljava/lang/String;
     724: astore        16
     726: goto          769
     729: iload         6
     731: ifle          769
     734: aload_0
     735: getfield      #7                  // Field gameContainer:Lagolf/GameContainer;
     738: getfield      #184                // Field agolf/GameContainer.textManager:Lcom/aapeli/client/TextManager;
     741: iload         6
     743: iconst_1
     744: if_icmpne     752
     747: ldc           #199                // String Reg
     749: goto          754
     752: ldc           #201                // String Vip
     754: invokedynamic #203,  0            // InvokeDynamic #1:makeConcatWithConstants:(Ljava/lang/String;)Ljava/lang/String;
     759: invokevirtual #190                // Method com/aapeli/client/TextManager.getText:(Ljava/lang/String;)Ljava/lang/String;
     762: invokedynamic #196,  0            // InvokeDynamic #0:makeConcatWithConstants:(Ljava/lang/String;)Ljava/lang/String;
     767: astore        16
     769: aload         16
     771: aload_0
     772: getfield      #7                  // Field gameContainer:Lagolf/GameContainer;
     775: getfield      #184                // Field agolf/GameContainer.textManager:Lcom/aapeli/client/TextManager;
     778: ldc           #204                // String GameChat_GS_Players
     780: iconst_1
     781: newarray       int
     783: dup
     784: iconst_0
     785: aload_0
     786: getfield      #124                // Field playerCount:I
     789: iastore
     790: invokevirtual #206                // Method com/aapeli/client/TextManager.getText:(Ljava/lang/String;[I)Ljava/lang/String;
     793: invokedynamic #209,  0            // InvokeDynamic #2:makeConcatWithConstants:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
     798: astore        16
     800: aload         16
     802: aload_0
     803: getfield      #7                  // Field gameContainer:Lagolf/GameContainer;
     806: getfield      #184                // Field agolf/GameContainer.textManager:Lcom/aapeli/client/TextManager;
     809: ldc           #212                // String GameChat_GS_Tracks
     811: iconst_1
     812: newarray       int
     814: dup
     815: iconst_0
     816: iload         7
     818: iastore
     819: invokevirtual #206                // Method com/aapeli/client/TextManager.getText:(Ljava/lang/String;[I)Ljava/lang/String;
     822: invokedynamic #214,  0            // InvokeDynamic #3:makeConcatWithConstants:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
     827: astore        16
     829: iload         8
     831: ifle          872
     834: aload         16
     836: aload_0
     837: getfield      #7                  // Field gameContainer:Lagolf/GameContainer;
     840: getfield      #184                // Field agolf/GameContainer.textManager:Lcom/aapeli/client/TextManager;
     843: iload         8
     845: invokedynamic #215,  0            // InvokeDynamic #4:makeConcatWithConstants:(I)Ljava/lang/String;
     850: aload_0
     851: getfield      #7                  // Field gameContainer:Lagolf/GameContainer;
     854: getfield      #184                // Field agolf/GameContainer.textManager:Lcom/aapeli/client/TextManager;
     857: ldc           #218                // String LobbyReal_TrackTypesTest
     859: invokevirtual #190                // Method com/aapeli/client/TextManager.getText:(Ljava/lang/String;)Ljava/lang/String;
     862: invokevirtual #220                // Method com/aapeli/client/TextManager.getIfAvailable:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
     865: invokedynamic #223,  0            // InvokeDynamic #5:makeConcatWithConstants:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
     870: astore        16
     872: iload         9
     874: bipush        20
     876: if_icmpeq     945
     879: iload         9
     881: ifle          916
     884: aload         16
     886: aload_0
     887: getfield      #7                  // Field gameContainer:Lagolf/GameContainer;
     890: getfield      #184                // Field agolf/GameContainer.textManager:Lcom/aapeli/client/TextManager;
     893: ldc           #224                // String GameChat_GS_MaxStrokes
     895: iconst_1
     896: newarray       int
     898: dup
     899: iconst_0
     900: iload         9
     902: iastore
     903: invokevirtual #206                // Method com/aapeli/client/TextManager.getText:(Ljava/lang/String;[I)Ljava/lang/String;
     906: invokedynamic #214,  0            // InvokeDynamic #3:makeConcatWithConstants:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
     911: astore        16
     913: goto          945
     916: aload         16
     918: aload_0
     919: getfield      #7                  // Field gameContainer:Lagolf/GameContainer;
     922: getfield      #184                // Field agolf/GameContainer.textManager:Lcom/aapeli/client/TextManager;
     925: ldc           #226                // String GameChat_GS_MaxStrokesUnlimited
     927: iconst_1
     928: newarray       int
     930: dup
     931: iconst_0
     932: iload         9
     934: iastore
     935: invokevirtual #206                // Method com/aapeli/client/TextManager.getText:(Ljava/lang/String;[I)Ljava/lang/String;
     938: invokedynamic #214,  0            // InvokeDynamic #3:makeConcatWithConstants:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
     943: astore        16
     945: iload         10
     947: ifle          1011
     950: aload         16
     952: aload_0
     953: getfield      #7                  // Field gameContainer:Lagolf/GameContainer;
     956: getfield      #184                // Field agolf/GameContainer.textManager:Lcom/aapeli/client/TextManager;
     959: iload         10
     961: bipush        60
     963: if_icmpge     971
     966: ldc           #228                // String Sec
     968: goto          973
     971: ldc           #230                // String Min
     973: invokedynamic #232,  0            // InvokeDynamic #6:makeConcatWithConstants:(Ljava/lang/String;)Ljava/lang/String;
     978: iconst_1
     979: newarray       int
     981: dup
     982: iconst_0
     983: iload         10
     985: bipush        60
     987: if_icmpge     995
     990: iload         10
     992: goto          1000
     995: iload         10
     997: bipush        60
     999: idiv
    1000: iastore
    1001: invokevirtual #206                // Method com/aapeli/client/TextManager.getText:(Ljava/lang/String;[I)Ljava/lang/String;
    1004: invokedynamic #214,  0            // InvokeDynamic #3:makeConcatWithConstants:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
    1009: astore        16
    1011: iload         11
    1013: iconst_1
    1014: if_icmpne     1038
    1017: aload         16
    1019: aload_0
    1020: getfield      #7                  // Field gameContainer:Lagolf/GameContainer;
    1023: getfield      #184                // Field agolf/GameContainer.textManager:Lcom/aapeli/client/TextManager;
    1026: ldc           #233                // String GameChat_GS_WaterShore
    1028: invokevirtual #190                // Method com/aapeli/client/TextManager.getText:(Ljava/lang/String;)Ljava/lang/String;
    1031: invokedynamic #214,  0            // InvokeDynamic #3:makeConcatWithConstants:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
    1036: astore        16
    1038: iload         12
    1040: ifne          1064
    1043: aload         16
    1045: aload_0
    1046: getfield      #7                  // Field gameContainer:Lagolf/GameContainer;
    1049: getfield      #184                // Field agolf/GameContainer.textManager:Lcom/aapeli/client/TextManager;
    1052: ldc           #235                // String GameChat_GS_NoCollision
    1054: invokevirtual #190                // Method com/aapeli/client/TextManager.getText:(Ljava/lang/String;)Ljava/lang/String;
    1057: invokedynamic #214,  0            // InvokeDynamic #3:makeConcatWithConstants:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
    1062: astore        16
    1064: iload         13
    1066: iconst_1
    1067: if_icmpne     1091
    1070: aload         16
    1072: aload_0
    1073: getfield      #7                  // Field gameContainer:Lagolf/GameContainer;
    1076: getfield      #184                // Field agolf/GameContainer.textManager:Lcom/aapeli/client/TextManager;
    1079: ldc           #237                // String GameChat_GS_TrackScoring
    1081: invokevirtual #190                // Method com/aapeli/client/TextManager.getText:(Ljava/lang/String;)Ljava/lang/String;
    1084: invokedynamic #214,  0            // InvokeDynamic #3:makeConcatWithConstants:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
    1089: astore        16
    1091: iload         14
    1093: ifle          1122
    1096: aload         16
    1098: aload_0
    1099: getfield      #7                  // Field gameContainer:Lagolf/GameContainer;
    1102: getfield      #184                // Field agolf/GameContainer.textManager:Lcom/aapeli/client/TextManager;
    1105: iload         14
    1107: invokedynamic #239,  0            // InvokeDynamic #7:makeConcatWithConstants:(I)Ljava/lang/String;
    1112: invokevirtual #190                // Method com/aapeli/client/TextManager.getText:(Ljava/lang/String;)Ljava/lang/String;
    1115: invokedynamic #214,  0            // InvokeDynamic #3:makeConcatWithConstants:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
    1120: astore        16
    1122: aload_0
    1123: getfield      #240                // Field chatPanel:Lagolf/game/ChatPanel;
    1126: aload_0
    1127: getfield      #7                  // Field gameContainer:Lagolf/GameContainer;
    1130: getfield      #184                // Field agolf/GameContainer.textManager:Lcom/aapeli/client/TextManager;
    1133: ldc           #244                // String GameChat_GameName
    1135: iconst_1
    1136: anewarray     #73                 // class java/lang/String
    1139: dup
    1140: iconst_0
    1141: aload         4
    1143: aastore
    1144: invokevirtual #246                // Method com/aapeli/client/TextManager.getText:(Ljava/lang/String;[Ljava/lang/String;)Ljava/lang/String;
    1147: invokevirtual #249                // Method agolf/game/ChatPanel.addMessage:(Ljava/lang/String;)V
    1150: aload_0
    1151: getfield      #240                // Field chatPanel:Lagolf/game/ChatPanel;
    1154: aload_0
    1155: getfield      #7                  // Field gameContainer:Lagolf/GameContainer;
    1158: getfield      #184                // Field agolf/GameContainer.textManager:Lcom/aapeli/client/TextManager;
    1161: ldc           #255                // String GameChat_GameSettings
    1163: iconst_1
    1164: anewarray     #73                 // class java/lang/String
    1167: dup
    1168: iconst_0
    1169: aload         16
    1171: aastore
    1172: invokevirtual #246                // Method com/aapeli/client/TextManager.getText:(Ljava/lang/String;[Ljava/lang/String;)Ljava/lang/String;
    1175: invokevirtual #249                // Method agolf/game/ChatPanel.addMessage:(Ljava/lang/String;)V
    1178: goto          2777
    1181: aload_1
    1182: arraylength
    1183: iconst_2
    1184: isub
    1185: istore        4
    1187: iload         4
    1189: newarray       int
    1191: astore        5
    1193: iconst_0
    1194: istore        6
    1196: iload         6
    1198: iload         4
    1200: if_icmpge     1223
    1203: aload         5
    1205: iload         6
    1207: aload_1
    1208: iconst_2
    1209: iload         6
    1211: iadd
    1212: aaload
    1213: invokestatic  #118                // Method java/lang/Integer.parseInt:(Ljava/lang/String;)I
    1216: iastore
    1217: iinc          6, 1
    1220: goto          1196
    1223: aload_0
    1224: getfield      #145                // Field playerInfoPanel:Lagolf/game/PlayerInfoPanel;
    1227: aload         5
    1229: invokevirtual #257                // Method agolf/game/PlayerInfoPanel.setTrackScoresMultipliers:([I)V
    1232: goto          2777
    1235: aload_1
    1236: arraylength
    1237: iconst_2
    1238: isub
    1239: iconst_3
    1240: idiv
    1241: istore        4
    1243: iconst_2
    1244: istore        5
    1246: iconst_0
    1247: istore        6
    1249: iload         6
    1251: iload         4
    1253: if_icmpge     1334
    1256: aload_1
    1257: iload         5
    1259: aaload
    1260: invokestatic  #118                // Method java/lang/Integer.parseInt:(Ljava/lang/String;)I
    1263: istore        7
    1265: aload_1
    1266: iload         5
    1268: iconst_2
    1269: iadd
    1270: aaload
    1271: ldc_w         #261                // String -
    1274: invokevirtual #80                 // Method java/lang/String.equals:(Ljava/lang/Object;)Z
    1277: ifeq          1284
    1280: aconst_null
    1281: goto          1290
    1284: aload_1
    1285: iload         5
    1287: iconst_2
    1288: iadd
    1289: aaload
    1290: astore        8
    1292: aload_0
    1293: getfield      #145                // Field playerInfoPanel:Lagolf/game/PlayerInfoPanel;
    1296: iload         7
    1298: aload_1
    1299: iload         5
    1301: iconst_1
    1302: iadd
    1303: aaload
    1304: aload         8
    1306: iconst_0
    1307: invokevirtual #263                // Method agolf/game/PlayerInfoPanel.addPlayer:(ILjava/lang/String;Ljava/lang/String;Z)V
    1310: aload_0
    1311: getfield      #240                // Field chatPanel:Lagolf/game/ChatPanel;
    1314: aload_1
    1315: iload         5
    1317: iconst_1
    1318: iadd
    1319: aaload
    1320: iload         7
    1322: invokevirtual #267                // Method agolf/game/ChatPanel.setUserColour:(Ljava/lang/String;I)V
    1325: iinc          5, 3
    1328: iinc          6, 1
    1331: goto          1249
    1334: goto          2777
    1337: aload_1
    1338: iconst_2
    1339: aaload
    1340: invokestatic  #118                // Method java/lang/Integer.parseInt:(Ljava/lang/String;)I
    1343: istore        4
    1345: aload_1
    1346: iconst_4
    1347: aaload
    1348: ldc_w         #261                // String -
    1351: invokevirtual #80                 // Method java/lang/String.equals:(Ljava/lang/Object;)Z
    1354: ifeq          1361
    1357: aconst_null
    1358: goto          1364
    1361: aload_1
    1362: iconst_4
    1363: aaload
    1364: astore        5
    1366: aload_0
    1367: getfield      #145                // Field playerInfoPanel:Lagolf/game/PlayerInfoPanel;
    1370: iload         4
    1372: aload_1
    1373: iconst_3
    1374: aaload
    1375: aload         5
    1377: iconst_1
    1378: invokevirtual #263                // Method agolf/game/PlayerInfoPanel.addPlayer:(ILjava/lang/String;Ljava/lang/String;Z)V
    1381: aload_0
    1382: getfield      #240                // Field chatPanel:Lagolf/game/ChatPanel;
    1385: aload_1
    1386: iconst_3
    1387: aaload
    1388: iload         4
    1390: invokevirtual #267                // Method agolf/game/ChatPanel.setUserColour:(Ljava/lang/String;I)V
    1393: aload_0
    1394: invokestatic  #271                // Method java/lang/System.currentTimeMillis:()J
    1397: putfield      #277                // Field aLong364:J
    1400: goto          2777
    1403: aload_1
    1404: iconst_2
    1405: aaload
    1406: invokestatic  #118                // Method java/lang/Integer.parseInt:(Ljava/lang/String;)I
    1409: istore        4
    1411: aload_1
    1412: iconst_4
    1413: aaload
    1414: ldc_w         #261                // String -
    1417: invokevirtual #80                 // Method java/lang/String.equals:(Ljava/lang/Object;)Z
    1420: ifeq          1427
    1423: aconst_null
    1424: goto          1430
    1427: aload_1
    1428: iconst_4
    1429: aaload
    1430: astore        5
    1432: aload_0
    1433: getfield      #145                // Field playerInfoPanel:Lagolf/game/PlayerInfoPanel;
    1436: iload         4
    1438: aload_1
    1439: iconst_3
    1440: aaload
    1441: aload         5
    1443: iconst_0
    1444: invokevirtual #263                // Method agolf/game/PlayerInfoPanel.addPlayer:(ILjava/lang/String;Ljava/lang/String;Z)V
    1447: aload_0
    1448: getfield      #240                // Field chatPanel:Lagolf/game/ChatPanel;
    1451: aload_1
    1452: iconst_3
    1453: aaload
    1454: iload         4
    1456: invokevirtual #267                // Method agolf/game/ChatPanel.setUserColour:(Ljava/lang/String;I)V
    1459: aload_0
    1460: getfield      #124                // Field playerCount:I
    1463: iconst_2
    1464: if_icmpne     1473
    1467: iload         4
    1469: iconst_1
    1470: if_icmpeq     1539
    1473: aload_0
    1474: getfield      #240                // Field chatPanel:Lagolf/game/ChatPanel;
    1477: aload         5
    1479: ifnull        1513
    1482: aload_0
    1483: getfield      #7                  // Field gameContainer:Lagolf/GameContainer;
    1486: getfield      #184                // Field agolf/GameContainer.textManager:Lcom/aapeli/client/TextManager;
    1489: ldc_w         #281                // String GameChat_JoinClan
    1492: iconst_2
    1493: anewarray     #73                 // class java/lang/String
    1496: dup
    1497: iconst_0
    1498: aload_1
    1499: iconst_3
    1500: aaload
    1501: aastore
    1502: dup
    1503: iconst_1
    1504: aload         5
    1506: aastore
    1507: invokevirtual #246                // Method com/aapeli/client/TextManager.getText:(Ljava/lang/String;[Ljava/lang/String;)Ljava/lang/String;
    1510: goto          1536
    1513: aload_0
    1514: getfield      #7                  // Field gameContainer:Lagolf/GameContainer;
    1517: getfield      #184                // Field agolf/GameContainer.textManager:Lcom/aapeli/client/TextManager;
    1520: ldc_w         #283                // String GameChat_Join
    1523: iconst_1
    1524: anewarray     #73                 // class java/lang/String
    1527: dup
    1528: iconst_0
    1529: aload_1
    1530: iconst_3
    1531: aaload
    1532: aastore
    1533: invokevirtual #246                // Method com/aapeli/client/TextManager.getText:(Ljava/lang/String;[Ljava/lang/String;)Ljava/lang/String;
    1536: invokevirtual #249                // Method agolf/game/ChatPanel.addMessage:(Ljava/lang/String;)V
    1539: goto          2777
    1542: aload_1
    1543: iconst_2
    1544: aaload
    1545: invokestatic  #118                // Method java/lang/Integer.parseInt:(Ljava/lang/String;)I
    1548: istore        4
    1550: aload_0
    1551: getfield      #145                // Field playerInfoPanel:Lagolf/game/PlayerInfoPanel;
    1554: iload         4
    1556: aload_1
    1557: iconst_3
    1558: aaload
    1559: invokestatic  #118                // Method java/lang/Integer.parseInt:(Ljava/lang/String;)I
    1562: invokevirtual #285                // Method agolf/game/PlayerInfoPanel.setPlayerPartStatus:(II)Z
    1565: istore        5
    1567: iload         5
    1569: ifeq          1579
    1572: aload_0
    1573: getfield      #164                // Field gameControlPanel:Lagolf/game/GameControlPanel;
    1576: invokevirtual #289                // Method agolf/game/GameControlPanel.method329:()V
    1579: aload_0
    1580: getfield      #145                // Field playerInfoPanel:Lagolf/game/PlayerInfoPanel;
    1583: getfield      #292                // Field agolf/game/PlayerInfoPanel.playerNames:[Ljava/lang/String;
    1586: iload         4
    1588: aaload
    1589: astore        6
    1591: aload_0
    1592: getfield      #240                // Field chatPanel:Lagolf/game/ChatPanel;
    1595: aload_0
    1596: getfield      #7                  // Field gameContainer:Lagolf/GameContainer;
    1599: getfield      #184                // Field agolf/GameContainer.textManager:Lcom/aapeli/client/TextManager;
    1602: ldc_w         #296                // String GameChat_Part
    1605: iconst_1
    1606: anewarray     #73                 // class java/lang/String
    1609: dup
    1610: iconst_0
    1611: aload         6
    1613: aastore
    1614: invokevirtual #246                // Method com/aapeli/client/TextManager.getText:(Ljava/lang/String;[Ljava/lang/String;)Ljava/lang/String;
    1617: invokevirtual #249                // Method agolf/game/ChatPanel.addMessage:(Ljava/lang/String;)V
    1620: aload_0
    1621: getfield      #240                // Field chatPanel:Lagolf/game/ChatPanel;
    1624: aload         6
    1626: invokevirtual #298                // Method agolf/game/ChatPanel.removeUserColour:(Ljava/lang/String;)V
    1629: aload_0
    1630: getfield      #164                // Field gameControlPanel:Lagolf/game/GameControlPanel;
    1633: invokevirtual #301                // Method agolf/game/GameControlPanel.refreshBackButton:()V
    1636: goto          2777
    1639: aload_1
    1640: iconst_2
    1641: aaload
    1642: invokestatic  #118                // Method java/lang/Integer.parseInt:(Ljava/lang/String;)I
    1645: istore        4
    1647: aload_0
    1648: getfield      #240                // Field chatPanel:Lagolf/game/ChatPanel;
    1651: aload_0
    1652: getfield      #145                // Field playerInfoPanel:Lagolf/game/PlayerInfoPanel;
    1655: getfield      #292                // Field agolf/game/PlayerInfoPanel.playerNames:[Ljava/lang/String;
    1658: iload         4
    1660: aaload
    1661: aload_1
    1662: iconst_3
    1663: aaload
    1664: iconst_0
    1665: invokevirtual #304                // Method agolf/game/ChatPanel.addSay:(Ljava/lang/String;Ljava/lang/String;Z)V
    1668: goto          2777
    1671: new           #308                // class java/util/StringTokenizer
    1674: dup
    1675: aload_1
    1676: iconst_2
    1677: aaload
    1678: ldc_w         #310                // String ,
    1681: invokespecial #312                // Method java/util/StringTokenizer."<init>":(Ljava/lang/String;Ljava/lang/String;)V
    1684: astore        4
    1686: aload         4
    1688: invokevirtual #315                // Method java/util/StringTokenizer.countTokens:()I
    1691: istore        5
    1693: iconst_5
    1694: iload         5
    1696: multianewarray #318,  2           // class "[[I"
    1700: astore        6
    1702: iconst_0
    1703: istore        7
    1705: iload         7
    1707: iconst_5
    1708: if_icmpge     1773
    1711: iconst_0
    1712: istore        8
    1714: iload         8
    1716: iload         5
    1718: if_icmpge     1743
    1721: aload         6
    1723: iload         7
    1725: aaload
    1726: iload         8
    1728: aload         4
    1730: invokevirtual #320                // Method java/util/StringTokenizer.nextToken:()Ljava/lang/String;
    1733: invokestatic  #118                // Method java/lang/Integer.parseInt:(Ljava/lang/String;)I
    1736: iastore
    1737: iinc          8, 1
    1740: goto          1714
    1743: iload         7
    1745: iconst_4
    1746: if_icmpge     1767
    1749: new           #308                // class java/util/StringTokenizer
    1752: dup
    1753: aload_1
    1754: iconst_3
    1755: iload         7
    1757: iadd
    1758: aaload
    1759: ldc_w         #310                // String ,
    1762: invokespecial #312                // Method java/util/StringTokenizer."<init>":(Ljava/lang/String;Ljava/lang/String;)V
    1765: astore        4
    1767: iinc          7, 1
    1770: goto          1705
    1773: aload_0
    1774: getfield      #145                // Field playerInfoPanel:Lagolf/game/PlayerInfoPanel;
    1777: aload         6
    1779: invokevirtual #324                // Method agolf/game/PlayerInfoPanel.initResultsComparison:([[I)V
    1782: goto          2777
    1785: aload_0
    1786: getfield      #124                // Field playerCount:I
    1789: iconst_1
    1790: if_icmple     1855
    1793: aload_0
    1794: getfield      #28                 // Field aBoolean363:Z
    1797: ifeq          1845
    1800: invokestatic  #271                // Method java/lang/System.currentTimeMillis:()J
    1803: aload_0
    1804: getfield      #277                // Field aLong364:J
    1807: ldc2_w        #328                // long 1000l
    1810: ladd
    1811: lcmp
    1812: ifle          1825
    1815: aload_0
    1816: getfield      #7                  // Field gameContainer:Lagolf/GameContainer;
    1819: getfield      #330                // Field agolf/GameContainer.soundManager:Lcom/aapeli/client/SoundManager;
    1822: invokevirtual #334                // Method com/aapeli/client/SoundManager.playNotify:()V
    1825: aload_0
    1826: getfield      #7                  // Field gameContainer:Lagolf/GameContainer;
    1829: getfield      #339                // Field agolf/GameContainer.golfGameFrame:Lagolf/GolfGameFrame;
    1832: aload_0
    1833: getfield      #145                // Field playerInfoPanel:Lagolf/game/PlayerInfoPanel;
    1836: invokevirtual #343                // Method agolf/game/PlayerInfoPanel.getPlayerNames:()[Ljava/lang/String;
    1839: invokevirtual #347                // Method agolf/GolfGameFrame.showPlayerList:([Ljava/lang/String;)V
    1842: goto          1855
    1845: aload_0
    1846: getfield      #7                  // Field gameContainer:Lagolf/GameContainer;
    1849: getfield      #339                // Field agolf/GameContainer.golfGameFrame:Lagolf/GolfGameFrame;
    1852: invokevirtual #351                // Method agolf/GolfGameFrame.removePlayerListWinnders:()V
    1855: aload_0
    1856: iconst_0
    1857: putfield      #28                 // Field aBoolean363:Z
    1860: aload_0
    1861: getfield      #173                // Field gameCanvas:Lagolf/game/GameCanvas;
    1864: invokevirtual #354                // Method agolf/game/GameCanvas.initializeGameArea:()V
    1867: aload_0
    1868: getfield      #145                // Field playerInfoPanel:Lagolf/game/PlayerInfoPanel;
    1871: invokevirtual #357                // Method agolf/game/PlayerInfoPanel.reset:()V
    1874: aload_0
    1875: getfield      #155                // Field trackInfoPanel:Lagolf/game/TrackInfoPanel;
    1878: invokevirtual #360                // Method agolf/game/TrackInfoPanel.resetCurrentTrack:()V
    1881: aload_0
    1882: iconst_1
    1883: invokevirtual #42                 // Method setState:(I)V
    1886: goto          2777
    1889: aload_0
    1890: getfield      #173                // Field gameCanvas:Lagolf/game/GameCanvas;
    1893: invokevirtual #363                // Method agolf/game/GameCanvas.restartGame:()V
    1896: aload_1
    1897: iconst_2
    1898: aaload
    1899: ldc_w         #366                // String ttm1
    1902: invokevirtual #80                 // Method java/lang/String.equals:(Ljava/lang/Object;)Z
    1905: istore        4
    1907: aload_1
    1908: iconst_2
    1909: aaload
    1910: ldc_w         #368                // String ttm2
    1913: invokevirtual #80                 // Method java/lang/String.equals:(Ljava/lang/Object;)Z
    1916: istore        5
    1918: iload         4
    1920: ifne          1928
    1923: iload         5
    1925: ifeq          1932
    1928: iconst_1
    1929: goto          1933
    1932: iconst_0
    1933: istore        6
    1935: iconst_0
    1936: istore        7
    1938: iload         6
    1940: ifeq          1947
    1943: iconst_5
    1944: goto          1948
    1947: iconst_4
    1948: istore        8
    1950: aload_1
    1951: arraylength
    1952: istore        9
    1954: aconst_null
    1955: astore        10
    1957: aconst_null
    1958: astore        11
    1960: aconst_null
    1961: astore        12
    1963: ldc           #182                // String
    1965: astore        13
    1967: iload         8
    1969: istore        14
    1971: iload         14
    1973: iload         9
    1975: if_icmpge     2122
    1978: aload_1
    1979: iload         14
    1981: aaload
    1982: iconst_0
    1983: invokevirtual #370                // Method java/lang/String.charAt:(I)C
    1986: istore        15
    1988: iload         15
    1990: bipush        65
    1992: if_icmpne     2005
    1995: aload_1
    1996: iload         14
    1998: aaload
    1999: iconst_2
    2000: invokevirtual #374                // Method java/lang/String.substring:(I)Ljava/lang/String;
    2003: astore        10
    2005: iload         15
    2007: bipush        78
    2009: if_icmpne     2022
    2012: aload_1
    2013: iload         14
    2015: aaload
    2016: iconst_2
    2017: invokevirtual #374                // Method java/lang/String.substring:(I)Ljava/lang/String;
    2020: astore        11
    2022: iload         15
    2024: bipush        84
    2026: if_icmpne     2039
    2029: aload_1
    2030: iload         14
    2032: aaload
    2033: iconst_2
    2034: invokevirtual #374                // Method java/lang/String.substring:(I)Ljava/lang/String;
    2037: astore        12
    2039: iload         15
    2041: bipush        84
    2043: if_icmpne     2085
    2046: aload_1
    2047: iload         14
    2049: aaload
    2050: iconst_2
    2051: invokevirtual #370                // Method java/lang/String.charAt:(I)C
    2054: bipush        33
    2056: if_icmpne     2085
    2059: aload_1
    2060: iload         14
    2062: aload_0
    2063: getfield      #7                  // Field gameContainer:Lagolf/GameContainer;
    2066: getfield      #377                // Field agolf/GameContainer.trackCollection:Lagolf/TrackCollection;
    2069: aload         10
    2071: aload         11
    2073: invokevirtual #381                // Method agolf/TrackCollection.getTrack:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
    2076: invokedynamic #386,  0            // InvokeDynamic #8:makeConcatWithConstants:(Ljava/lang/String;)Ljava/lang/String;
    2081: aastore
    2082: iconst_1
    2083: istore        7
    2085: aload         13
    2087: aload_1
    2088: iload         14
    2090: aaload
    2091: invokedynamic #209,  0            // InvokeDynamic #2:makeConcatWithConstants:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
    2096: astore        13
    2098: iload         14
    2100: iload         9
    2102: iconst_1
    2103: isub
    2104: if_icmpge     2116
    2107: aload         13
    2109: invokedynamic #387,  0            // InvokeDynamic #9:makeConcatWithConstants:(Ljava/lang/String;)Ljava/lang/String;
    2114: astore        13
    2116: iinc          14, 1
    2119: goto          1971
    2122: invokestatic  #388                // Method org/moparforia/client/Launcher.debug:()Z
    2125: ifeq          2141
    2128: getstatic     #393                // Field java/lang/System.out:Ljava/io/PrintStream;
    2131: aload         13
    2133: invokedynamic #397,  0            // InvokeDynamic #10:makeConcatWithConstants:(Ljava/lang/String;)Ljava/lang/String;
    2138: invokevirtual #398                // Method java/io/PrintStream.println:(Ljava/lang/String;)V
    2141: iload         7
    2143: ifne          2162
    2146: aload_0
    2147: getfield      #7                  // Field gameContainer:Lagolf/GameContainer;
    2150: getfield      #377                // Field agolf/GameContainer.trackCollection:Lagolf/TrackCollection;
    2153: aload         10
    2155: aload         11
    2157: aload         12
    2159: invokevirtual #403                // Method agolf/TrackCollection.addTrack:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
    2162: aload_0
    2163: getfield      #173                // Field gameCanvas:Lagolf/game/GameCanvas;
    2166: aload         13
    2168: aload_1
    2169: iload         6
    2171: ifeq          2178
    2174: iconst_3
    2175: goto          2179
    2178: iconst_2
    2179: aaload
    2180: aload_1
    2181: iload         6
    2183: ifeq          2190
    2186: iconst_4
    2187: goto          2191
    2190: iconst_3
    2191: aaload
    2192: invokestatic  #118                // Method java/lang/Integer.parseInt:(Ljava/lang/String;)I
    2195: invokevirtual #407                // Method agolf/game/GameCanvas.init:(Ljava/lang/String;Ljava/lang/String;I)Z
    2198: pop
    2199: aload_0
    2200: getfield      #173                // Field gameCanvas:Lagolf/game/GameCanvas;
    2203: getfield      #410                // Field agolf/game/GameCanvas.trackStats:Lorg/moparforia/shared/tracks/stats/TrackStats;
    2206: invokeinterface #414,  1          // InterfaceMethod org/moparforia/shared/tracks/stats/TrackStats.generateTrackInformation:()[Ljava/lang/String;
    2211: astore        14
    2213: aload_0
    2214: getfield      #173                // Field gameCanvas:Lagolf/game/GameCanvas;
    2217: getfield      #410                // Field agolf/game/GameCanvas.trackStats:Lorg/moparforia/shared/tracks/stats/TrackStats;
    2220: invokeinterface #419,  1          // InterfaceMethod org/moparforia/shared/tracks/stats/TrackStats.generateTrackStatistics:()[[I
    2225: astore        15
    2227: aload_0
    2228: getfield      #155                // Field trackInfoPanel:Lagolf/game/TrackInfoPanel;
    2231: aload         14
    2233: iconst_0
    2234: aaload
    2235: aload         14
    2237: iconst_1
    2238: aaload
    2239: aload         15
    2241: iconst_0
    2242: aaload
    2243: aload         15
    2245: iconst_1
    2246: aaload
    2247: aload         14
    2249: iconst_2
    2250: aaload
    2251: aload         14
    2253: iconst_3
    2254: aaload
    2255: iload         4
    2257: iload         5
    2259: aload_0
    2260: getfield      #173                // Field gameCanvas:Lagolf/game/GameCanvas;
    2263: invokevirtual #423                // Method agolf/game/GameCanvas.hasCoordinates:()Z
    2266: invokevirtual #426                // Method agolf/game/TrackInfoPanel.parseTrackInfoStats:(Ljava/lang/String;Ljava/lang/String;[I[ILjava/lang/String;Ljava/lang/String;ZZZ)V
    2269: aload_0
    2270: getfield      #145                // Field playerInfoPanel:Lagolf/game/PlayerInfoPanel;
    2273: invokevirtual #430                // Method agolf/game/PlayerInfoPanel.startNextTrack:()I
    2276: istore        16
    2278: iload         16
    2280: iconst_1
    2281: if_icmple     2312
    2284: aload_0
    2285: getfield      #240                // Field chatPanel:Lagolf/game/ChatPanel;
    2288: aload_0
    2289: getfield      #7                  // Field gameContainer:Lagolf/GameContainer;
    2292: getfield      #184                // Field agolf/GameContainer.textManager:Lcom/aapeli/client/TextManager;
    2295: ldc_w         #433                // String GameChat_ScoreMultiNotify
    2298: iconst_1
    2299: newarray       int
    2301: dup
    2302: iconst_0
    2303: iload         16
    2305: iastore
    2306: invokevirtual #206                // Method com/aapeli/client/TextManager.getText:(Ljava/lang/String;[I)Ljava/lang/String;
    2309: invokevirtual #249                // Method agolf/game/ChatPanel.addMessage:(Ljava/lang/String;)V
    2312: aload_0
    2313: getfield      #164                // Field gameControlPanel:Lagolf/game/GameControlPanel;
    2316: invokevirtual #435                // Method agolf/game/GameControlPanel.displaySkipButton:()V
    2319: aload_0
    2320: getfield      #7                  // Field gameContainer:Lagolf/GameContainer;
    2323: getfield      #130                // Field agolf/GameContainer.synchronizedTrackTestMode:Lagolf/SynchronizedBool;
    2326: invokevirtual #136                // Method agolf/SynchronizedBool.get:()Z
    2329: ifeq          2369
    2332: aload_0
    2333: getfield      #240                // Field chatPanel:Lagolf/game/ChatPanel;
    2336: aload_0
    2337: getfield      #173                // Field gameCanvas:Lagolf/game/GameCanvas;
    2340: getfield      #438                // Field agolf/game/GameCanvas.track:Lorg/moparforia/shared/tracks/Track;
    2343: invokevirtual #442                // Method org/moparforia/shared/tracks/Track.getAuthor:()Ljava/lang/String;
    2346: aload_0
    2347: getfield      #173                // Field gameCanvas:Lagolf/game/GameCanvas;
    2350: getfield      #438                // Field agolf/game/GameCanvas.track:Lorg/moparforia/shared/tracks/Track;
    2353: invokevirtual #447                // Method org/moparforia/shared/tracks/Track.getSettings:()Ljava/lang/String;
    2356: aload_0
    2357: getfield      #173                // Field gameCanvas:Lagolf/game/GameCanvas;
    2360: getfield      #450                // Field agolf/game/GameCanvas.map:Lagolf/game/Map;
    2363: invokevirtual #454                // Method agolf/game/Map.getLatestTileSpeciality:()[Z
    2366: invokevirtual #460                // Method agolf/game/ChatPanel.printSpecialSettingstoTextArea:(Ljava/lang/String;Ljava/lang/String;[Z)V
    2369: goto          2777
    2372: aload_0
    2373: iconst_0
    2374: putfield      #464                // Field isWaitingForTurnStart:Z
    2377: aload_1
    2378: iconst_2
    2379: aaload
    2380: invokestatic  #118                // Method java/lang/Integer.parseInt:(Ljava/lang/String;)I
    2383: istore        4
    2385: aload_0
    2386: getfield      #145                // Field playerInfoPanel:Lagolf/game/PlayerInfoPanel;
    2389: iload         4
    2391: invokevirtual #467                // Method agolf/game/PlayerInfoPanel.startTurn:(I)Z
    2394: istore        5
    2396: aload_0
    2397: getfield      #173                // Field gameCanvas:Lagolf/game/GameCanvas;
    2400: iload         4
    2402: iload         5
    2404: aload_0
    2405: getfield      #240                // Field chatPanel:Lagolf/game/ChatPanel;
    2408: invokevirtual #471                // Method agolf/game/ChatPanel.haveFocus:()Z
    2411: ifne          2418
    2414: iconst_1
    2415: goto          2419
    2418: iconst_0
    2419: invokevirtual #474                // Method agolf/game/GameCanvas.startTurn:(IZZ)V
    2422: aload_0
    2423: getfield      #127                // Field isSinglePlayerGame:Z
    2426: ifne          2464
    2429: aload_0
    2430: getfield      #145                // Field playerInfoPanel:Lagolf/game/PlayerInfoPanel;
    2433: invokevirtual #477                // Method agolf/game/PlayerInfoPanel.method377:()I
    2436: istore        6
    2438: iload         6
    2440: bipush        10
    2442: if_icmpge     2457
    2445: iload         6
    2447: aload_0
    2448: getfield      #155                // Field trackInfoPanel:Lagolf/game/TrackInfoPanel;
    2451: invokevirtual #480                // Method agolf/game/TrackInfoPanel.method385:()I
    2454: if_icmplt     2464
    2457: aload_0
    2458: getfield      #164                // Field gameControlPanel:Lagolf/game/GameControlPanel;
    2461: invokevirtual #483                // Method agolf/game/GameControlPanel.showSkipButton:()V
    2464: goto          2777
    2467: aload_1
    2468: iconst_2
    2469: aaload
    2470: invokestatic  #118                // Method java/lang/Integer.parseInt:(Ljava/lang/String;)I
    2473: istore        4
    2475: aload_0
    2476: getfield      #145                // Field playerInfoPanel:Lagolf/game/PlayerInfoPanel;
    2479: iload         4
    2481: iconst_0
    2482: invokevirtual #486                // Method agolf/game/PlayerInfoPanel.strokeStartedOrEnded:(IZ)V
    2485: aload_0
    2486: getfield      #7                  // Field gameContainer:Lagolf/GameContainer;
    2489: getfield      #330                // Field agolf/GameContainer.soundManager:Lcom/aapeli/client/SoundManager;
    2492: invokevirtual #490                // Method com/aapeli/client/SoundManager.playGameMove:()V
    2495: aload_0
    2496: getfield      #145                // Field playerInfoPanel:Lagolf/game/PlayerInfoPanel;
    2499: invokevirtual #493                // Method agolf/game/PlayerInfoPanel.stopTimer:()V
    2502: aload_0
    2503: getfield      #173                // Field gameCanvas:Lagolf/game/GameCanvas;
    2506: iload         4
    2508: iconst_0
    2509: aload_1
    2510: iconst_3
    2511: aaload
    2512: invokevirtual #496                // Method agolf/game/GameCanvas.decodeCoords:(IZLjava/lang/String;)V
    2515: goto          2777
    2518: aload_1
    2519: arraylength
    2520: iconst_3
    2521: isub
    2522: istore        4
    2524: iload         4
    2526: newarray       int
    2528: astore        5
    2530: iconst_0
    2531: istore        6
    2533: iload         6
    2535: iload         4
    2537: if_icmpge     2560
    2540: aload         5
    2542: iload         6
    2544: aload_1
    2545: iconst_3
    2546: iload         6
    2548: iadd
    2549: aaload
    2550: invokestatic  #118                // Method java/lang/Integer.parseInt:(Ljava/lang/String;)I
    2553: iastore
    2554: iinc          6, 1
    2557: goto          2533
    2560: aload_0
    2561: getfield      #145                // Field playerInfoPanel:Lagolf/game/PlayerInfoPanel;
    2564: aload_1
    2565: iconst_2
    2566: aaload
    2567: invokestatic  #118                // Method java/lang/Integer.parseInt:(Ljava/lang/String;)I
    2570: aload         5
    2572: invokevirtual #500                // Method agolf/game/PlayerInfoPanel.setScores:(I[I)V
    2575: goto          2777
    2578: aload_0
    2579: getfield      #145                // Field playerInfoPanel:Lagolf/game/PlayerInfoPanel;
    2582: aload_1
    2583: iconst_2
    2584: aaload
    2585: invokestatic  #118                // Method java/lang/Integer.parseInt:(Ljava/lang/String;)I
    2588: invokevirtual #504                // Method agolf/game/PlayerInfoPanel.voteSkip:(I)V
    2591: goto          2777
    2594: aload_0
    2595: getfield      #145                // Field playerInfoPanel:Lagolf/game/PlayerInfoPanel;
    2598: invokevirtual #507                // Method agolf/game/PlayerInfoPanel.voteSkipReset:()V
    2601: aload_0
    2602: getfield      #173                // Field gameCanvas:Lagolf/game/GameCanvas;
    2605: aload_0
    2606: getfield      #145                // Field playerInfoPanel:Lagolf/game/PlayerInfoPanel;
    2609: getfield      #510                // Field agolf/game/PlayerInfoPanel.playerId:I
    2612: invokevirtual #513                // Method agolf/game/GameCanvas.getSynchronizedBool:(I)Z
    2615: ifne          2777
    2618: aload_0
    2619: getfield      #164                // Field gameControlPanel:Lagolf/game/GameControlPanel;
    2622: invokevirtual #483                // Method agolf/game/GameControlPanel.showSkipButton:()V
    2625: goto          2777
    2628: aload_0
    2629: getfield      #145                // Field playerInfoPanel:Lagolf/game/PlayerInfoPanel;
    2632: aload_1
    2633: iconst_2
    2634: aaload
    2635: invokestatic  #118                // Method java/lang/Integer.parseInt:(Ljava/lang/String;)I
    2638: invokevirtual #516                // Method agolf/game/PlayerInfoPanel.readyForNewGame:(I)V
    2641: goto          2777
    2644: aload_0
    2645: getfield      #173                // Field gameCanvas:Lagolf/game/GameCanvas;
    2648: invokevirtual #519                // Method agolf/game/GameCanvas.endGame:()V
    2651: aload_1
    2652: arraylength
    2653: iconst_2
    2654: isub
    2655: istore        4
    2657: iload         4
    2659: ifle          2747
    2662: iload         4
    2664: newarray       int
    2666: astore        5
    2668: iload         4
    2670: newarray       boolean
    2672: astore        6
    2674: iconst_0
    2675: istore        7
    2677: iload         7
    2679: iload         4
    2681: if_icmpge     2723
    2684: aload         5
    2686: iload         7
    2688: aload_1
    2689: iconst_2
    2690: iload         7
    2692: iadd
    2693: aaload
    2694: invokestatic  #118                // Method java/lang/Integer.parseInt:(Ljava/lang/String;)I
    2697: iastore
    2698: aload         6
    2700: iload         7
    2702: aload         5
    2704: iload         7
    2706: iaload
    2707: iconst_1
    2708: if_icmpne     2715
    2711: iconst_1
    2712: goto          2716
    2715: iconst_0
    2716: bastore
    2717: iinc          7, 1
    2720: goto          2677
    2723: aload_0
    2724: getfield      #145                // Field playerInfoPanel:Lagolf/game/PlayerInfoPanel;
    2727: aload         5
    2729: invokevirtual #522                // Method agolf/game/PlayerInfoPanel.setGameOutcome:([I)V
    2732: aload_0
    2733: getfield      #7                  // Field gameContainer:Lagolf/GameContainer;
    2736: getfield      #339                // Field agolf/GameContainer.golfGameFrame:Lagolf/GolfGameFrame;
    2739: aload         6
    2741: invokevirtual #525                // Method agolf/GolfGameFrame.showPlayerListWinners:([Z)V
    2744: goto          2755
    2747: aload_0
    2748: getfield      #145                // Field playerInfoPanel:Lagolf/game/PlayerInfoPanel;
    2751: aconst_null
    2752: invokevirtual #522                // Method agolf/game/PlayerInfoPanel.setGameOutcome:([I)V
    2755: aload_0
    2756: iconst_2
    2757: invokevirtual #42                 // Method setState:(I)V
    2760: aload_0
    2761: getfield      #127                // Field isSinglePlayerGame:Z
    2764: ifeq          2777
    2767: aload_0
    2768: getfield      #7                  // Field gameContainer:Lagolf/GameContainer;
    2771: getfield      #529                // Field agolf/GameContainer.lobbyPanel:Lagolf/lobby/LobbyPanel;
    2774: invokevirtual #533                // Method agolf/lobby/LobbyPanel.requestTrackSetList:()V
    2777: return

  protected void sendChatMessage(java.lang.String);
    Code:
       0: aload_1
       1: invokedynamic #538,  0            // InvokeDynamic #11:makeConcatWithConstants:(Ljava/lang/String;)Ljava/lang/String;
       6: astore_2
       7: aload_0
       8: getfield      #7                  // Field gameContainer:Lagolf/GameContainer;
      11: getfield      #539                // Field agolf/GameContainer.connection:Lagolf/GolfConnection;
      14: aload_2
      15: invokedynamic #543,  0            // InvokeDynamic #12:makeConcatWithConstants:(Ljava/lang/String;)Ljava/lang/String;
      20: invokevirtual #544                // Method agolf/GolfConnection.writeData:(Ljava/lang/String;)V
      23: aload_0
      24: getfield      #240                // Field chatPanel:Lagolf/game/ChatPanel;
      27: aload_0
      28: getfield      #145                // Field playerInfoPanel:Lagolf/game/PlayerInfoPanel;
      31: getfield      #292                // Field agolf/game/PlayerInfoPanel.playerNames:[Ljava/lang/String;
      34: aload_0
      35: getfield      #145                // Field playerInfoPanel:Lagolf/game/PlayerInfoPanel;
      38: getfield      #510                // Field agolf/game/PlayerInfoPanel.playerId:I
      41: aaload
      42: aload_1
      43: iconst_1
      44: invokevirtual #304                // Method agolf/game/ChatPanel.addSay:(Ljava/lang/String;Ljava/lang/String;Z)V
      47: return

  protected void setBeginStroke(int, int, int, int);
    Code:
       0: aload_0
       1: getfield      #155                // Field trackInfoPanel:Lagolf/game/TrackInfoPanel;
       4: invokevirtual #549                // Method agolf/game/TrackInfoPanel.method384:()V
       7: aload_0
       8: getfield      #145                // Field playerInfoPanel:Lagolf/game/PlayerInfoPanel;
      11: iload_1
      12: iconst_0
      13: invokevirtual #486                // Method agolf/game/PlayerInfoPanel.strokeStartedOrEnded:(IZ)V
      16: aload_0
      17: iload_2
      18: iload_3
      19: iload         4
      21: invokevirtual #552                // Method encodeCoords:(III)Ljava/lang/String;
      24: invokedynamic #556,  0            // InvokeDynamic #13:makeConcatWithConstants:(Ljava/lang/String;)Ljava/lang/String;
      29: astore        5
      31: aload_0
      32: getfield      #7                  // Field gameContainer:Lagolf/GameContainer;
      35: getfield      #539                // Field agolf/GameContainer.connection:Lagolf/GolfConnection;
      38: aload         5
      40: invokedynamic #543,  0            // InvokeDynamic #12:makeConcatWithConstants:(Ljava/lang/String;)Ljava/lang/String;
      45: invokevirtual #544                // Method agolf/GolfConnection.writeData:(Ljava/lang/String;)V
      48: aload_0
      49: getfield      #7                  // Field gameContainer:Lagolf/GameContainer;
      52: getfield      #330                // Field agolf/GameContainer.soundManager:Lcom/aapeli/client/SoundManager;
      55: invokevirtual #490                // Method com/aapeli/client/SoundManager.playGameMove:()V
      58: return

  protected void method336();
    Code:
       0: aload_0
       1: getfield      #173                // Field gameCanvas:Lagolf/game/GameCanvas;
       4: invokevirtual #557                // Method agolf/game/GameCanvas.encodeCoordinates:()Ljava/lang/String;
       7: astore_1
       8: aload_1
       9: ifnull        54
      12: aload_0
      13: getfield      #145                // Field playerInfoPanel:Lagolf/game/PlayerInfoPanel;
      16: iconst_0
      17: iconst_0
      18: invokevirtual #486                // Method agolf/game/PlayerInfoPanel.strokeStartedOrEnded:(IZ)V
      21: aload_1
      22: invokedynamic #556,  0            // InvokeDynamic #13:makeConcatWithConstants:(Ljava/lang/String;)Ljava/lang/String;
      27: astore_2
      28: aload_0
      29: getfield      #7                  // Field gameContainer:Lagolf/GameContainer;
      32: getfield      #539                // Field agolf/GameContainer.connection:Lagolf/GolfConnection;
      35: aload_2
      36: invokedynamic #543,  0            // InvokeDynamic #12:makeConcatWithConstants:(Ljava/lang/String;)Ljava/lang/String;
      41: invokevirtual #544                // Method agolf/GolfConnection.writeData:(Ljava/lang/String;)V
      44: aload_0
      45: getfield      #173                // Field gameCanvas:Lagolf/game/GameCanvas;
      48: iconst_0
      49: iconst_1
      50: aload_1
      51: invokevirtual #496                // Method agolf/game/GameCanvas.decodeCoords:(IZLjava/lang/String;)V
      54: return

  protected boolean isValidPlayerID(int);
    Code:
       0: aload_0
       1: getfield      #145                // Field playerInfoPanel:Lagolf/game/PlayerInfoPanel;
       4: iload_1
       5: invokevirtual #560                // Method agolf/game/PlayerInfoPanel.isOverStrokeLimit:(I)Z
       8: ireturn

  protected void sendEndStroke(int, agolf.SynchronizedBool[], int);
    Code:
       0: iload_1
       1: invokedynamic #563,  0            // InvokeDynamic #14:makeConcatWithConstants:(I)Ljava/lang/String;
       6: astore        4
       8: iconst_0
       9: istore        5
      11: iload         5
      13: aload_2
      14: arraylength
      15: if_icmpge     89
      18: iload_3
      19: iload         5
      21: if_icmpne     56
      24: aload_2
      25: iload         5
      27: aaload
      28: invokevirtual #136                // Method agolf/SynchronizedBool.get:()Z
      31: ifne          56
      34: aload_0
      35: getfield      #145                // Field playerInfoPanel:Lagolf/game/PlayerInfoPanel;
      38: iload         5
      40: iconst_1
      41: invokevirtual #486                // Method agolf/game/PlayerInfoPanel.strokeStartedOrEnded:(IZ)V
      44: aload         4
      46: invokedynamic #564,  0            // InvokeDynamic #15:makeConcatWithConstants:(Ljava/lang/String;)Ljava/lang/String;
      51: astore        4
      53: goto          83
      56: aload         4
      58: aload_2
      59: iload         5
      61: aaload
      62: invokevirtual #136                // Method agolf/SynchronizedBool.get:()Z
      65: ifeq          73
      68: ldc           #116                // String t
      70: goto          76
      73: ldc_w         #565                // String f
      76: invokedynamic #209,  0            // InvokeDynamic #2:makeConcatWithConstants:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
      81: astore        4
      83: iinc          5, 1
      86: goto          11
      89: aload_0
      90: getfield      #7                  // Field gameContainer:Lagolf/GameContainer;
      93: getfield      #539                // Field agolf/GameContainer.connection:Lagolf/GolfConnection;
      96: aload         4
      98: invokedynamic #543,  0            // InvokeDynamic #12:makeConcatWithConstants:(Ljava/lang/String;)Ljava/lang/String;
     103: invokevirtual #544                // Method agolf/GolfConnection.writeData:(Ljava/lang/String;)V
     106: return

  protected boolean skipButtonPressed(boolean);
    Code:
       0: aload_0
       1: getfield      #39                 // Field state:I
       4: iconst_1
       5: if_icmpne     100
       8: iload_1
       9: ifne          61
      12: aload_0
      13: getfield      #145                // Field playerInfoPanel:Lagolf/game/PlayerInfoPanel;
      16: invokevirtual #567                // Method agolf/game/PlayerInfoPanel.voteSkip:()V
      19: aload_0
      20: getfield      #145                // Field playerInfoPanel:Lagolf/game/PlayerInfoPanel;
      23: invokevirtual #569                // Method agolf/game/PlayerInfoPanel.shouldSkipTrack:()Z
      26: ifeq          46
      29: aload_0
      30: getfield      #173                // Field gameCanvas:Lagolf/game/GameCanvas;
      33: invokevirtual #572                // Method agolf/game/GameCanvas.method137:()Z
      36: ifeq          46
      39: aload_0
      40: getfield      #173                // Field gameCanvas:Lagolf/game/GameCanvas;
      43: invokevirtual #363                // Method agolf/game/GameCanvas.restartGame:()V
      46: aload_0
      47: getfield      #7                  // Field gameContainer:Lagolf/GameContainer;
      50: getfield      #539                // Field agolf/GameContainer.connection:Lagolf/GolfConnection;
      53: ldc_w         #575                // String game\tvoteskip
      56: invokevirtual #544                // Method agolf/GolfConnection.writeData:(Ljava/lang/String;)V
      59: iconst_1
      60: ireturn
      61: aload_0
      62: getfield      #173                // Field gameCanvas:Lagolf/game/GameCanvas;
      65: invokevirtual #572                // Method agolf/game/GameCanvas.method137:()Z
      68: ifeq          100
      71: aload_0
      72: getfield      #173                // Field gameCanvas:Lagolf/game/GameCanvas;
      75: invokevirtual #363                // Method agolf/game/GameCanvas.restartGame:()V
      78: aload_0
      79: getfield      #145                // Field playerInfoPanel:Lagolf/game/PlayerInfoPanel;
      82: invokevirtual #577                // Method agolf/game/PlayerInfoPanel.method372:()V
      85: aload_0
      86: getfield      #7                  // Field gameContainer:Lagolf/GameContainer;
      89: getfield      #539                // Field agolf/GameContainer.connection:Lagolf/GolfConnection;
      92: ldc_w         #580                // String game\tskip
      95: invokevirtual #544                // Method agolf/GolfConnection.writeData:(Ljava/lang/String;)V
      98: iconst_1
      99: ireturn
     100: iconst_0
     101: ireturn

  protected void hideSkipButton();
    Code:
       0: aload_0
       1: getfield      #164                // Field gameControlPanel:Lagolf/game/GameControlPanel;
       4: invokevirtual #582                // Method agolf/game/GameControlPanel.hideSkipButton:()V
       7: return

  protected void requestNewGame();
    Code:
       0: aload_0
       1: getfield      #7                  // Field gameContainer:Lagolf/GameContainer;
       4: getfield      #539                // Field agolf/GameContainer.connection:Lagolf/GolfConnection;
       7: ldc_w         #585                // String game\tnewgame
      10: invokevirtual #544                // Method agolf/GolfConnection.writeData:(Ljava/lang/String;)V
      13: return

  protected void leaveGame();
    Code:
       0: aload_0
       1: getfield      #173                // Field gameCanvas:Lagolf/game/GameCanvas;
       4: invokevirtual #363                // Method agolf/game/GameCanvas.restartGame:()V
       7: aload_0
       8: getfield      #145                // Field playerInfoPanel:Lagolf/game/PlayerInfoPanel;
      11: invokevirtual #493                // Method agolf/game/PlayerInfoPanel.stopTimer:()V
      14: aload_0
      15: getfield      #7                  // Field gameContainer:Lagolf/GameContainer;
      18: getfield      #339                // Field agolf/GameContainer.golfGameFrame:Lagolf/GolfGameFrame;
      21: iconst_0
      22: invokevirtual #587                // Method agolf/GolfGameFrame.setGameState:(I)V
      25: aload_0
      26: getfield      #7                  // Field gameContainer:Lagolf/GameContainer;
      29: getfield      #539                // Field agolf/GameContainer.connection:Lagolf/GolfConnection;
      32: ldc_w         #590                // String game\tback
      35: invokevirtual #544                // Method agolf/GolfConnection.writeData:(Ljava/lang/String;)V
      38: aload_0
      39: getfield      #7                  // Field gameContainer:Lagolf/GameContainer;
      42: getfield      #339                // Field agolf/GameContainer.golfGameFrame:Lagolf/GolfGameFrame;
      45: invokevirtual #592                // Method agolf/GolfGameFrame.removePlayerList:()V
      48: return

  protected void rateTrack(int, int);
    Code:
       0: iload_1
       1: iload_2
       2: invokedynamic #595,  0            // InvokeDynamic #16:makeConcatWithConstants:(II)Ljava/lang/String;
       7: astore_3
       8: aload_0
       9: getfield      #7                  // Field gameContainer:Lagolf/GameContainer;
      12: getfield      #539                // Field agolf/GameContainer.connection:Lagolf/GolfConnection;
      15: aload_3
      16: invokedynamic #543,  0            // InvokeDynamic #12:makeConcatWithConstants:(Ljava/lang/String;)Ljava/lang/String;
      21: invokevirtual #544                // Method agolf/GolfConnection.writeData:(Ljava/lang/String;)V
      24: return

  protected void respondNewGame(int, boolean);
    Code:
       0: iload_1
       1: iload_2
       2: ifeq          10
       5: ldc           #116                // String t
       7: goto          13
      10: ldc_w         #565                // String f
      13: invokedynamic #598,  0            // InvokeDynamic #17:makeConcatWithConstants:(ILjava/lang/String;)Ljava/lang/String;
      18: astore_3
      19: aload_0
      20: getfield      #7                  // Field gameContainer:Lagolf/GameContainer;
      23: getfield      #539                // Field agolf/GameContainer.connection:Lagolf/GolfConnection;
      26: aload_3
      27: invokedynamic #543,  0            // InvokeDynamic #12:makeConcatWithConstants:(Ljava/lang/String;)Ljava/lang/String;
      32: invokevirtual #544                // Method agolf/GolfConnection.writeData:(Ljava/lang/String;)V
      35: return

  protected void backToPrivate(int);
    Code:
       0: iload_1
       1: invokedynamic #601,  0            // InvokeDynamic #18:makeConcatWithConstants:(I)Ljava/lang/String;
       6: astore_2
       7: aload_0
       8: getfield      #7                  // Field gameContainer:Lagolf/GameContainer;
      11: getfield      #539                // Field agolf/GameContainer.connection:Lagolf/GolfConnection;
      14: aload_2
      15: invokedynamic #543,  0            // InvokeDynamic #12:makeConcatWithConstants:(Ljava/lang/String;)Ljava/lang/String;
      20: invokevirtual #544                // Method agolf/GolfConnection.writeData:(Ljava/lang/String;)V
      23: return

  protected boolean maxFps();
    Code:
       0: aload_0
       1: getfield      #164                // Field gameControlPanel:Lagolf/game/GameControlPanel;
       4: invokevirtual #602                // Method agolf/game/GameControlPanel.maxFps:()Z
       7: ireturn

  protected java.lang.String[] getPlayerName(int);
    Code:
       0: aload_0
       1: getfield      #145                // Field playerInfoPanel:Lagolf/game/PlayerInfoPanel;
       4: iload_1
       5: invokevirtual #605                // Method agolf/game/PlayerInfoPanel.getPlayerName:(I)[Ljava/lang/String;
       8: areturn

  protected void setPlayerNamesDisplayMode(int);
    Code:
       0: aload_0
       1: getfield      #173                // Field gameCanvas:Lagolf/game/GameCanvas;
       4: iload_1
       5: invokevirtual #609                // Method agolf/game/GameCanvas.setPlayerNamesDisplayMode:(I)V
       8: return

  public void broadcastMessage(java.lang.String);
    Code:
       0: aload_0
       1: getfield      #240                // Field chatPanel:Lagolf/game/ChatPanel;
       4: aload_1
       5: invokevirtual #612                // Method agolf/game/ChatPanel.addBroadcastMessage:(Ljava/lang/String;)V
       8: return

  protected boolean tryStroke(boolean);
    Code:
       0: aload_0
       1: getfield      #35                 // Field canStrokeLock:Ljava/lang/Object;
       4: dup
       5: astore_2
       6: monitorenter
       7: aload_0
       8: getfield      #464                // Field isWaitingForTurnStart:Z
      11: ifeq          18
      14: iconst_0
      15: aload_2
      16: monitorexit
      17: ireturn
      18: aload_0
      19: iconst_1
      20: putfield      #464                // Field isWaitingForTurnStart:Z
      23: aload_2
      24: monitorexit
      25: goto          33
      28: astore_3
      29: aload_2
      30: monitorexit
      31: aload_3
      32: athrow
      33: iload_1
      34: ifeq          47
      37: aload_0
      38: getfield      #173                // Field gameCanvas:Lagolf/game/GameCanvas;
      41: invokevirtual #615                // Method agolf/game/GameCanvas.doZeroLengthStroke:()V
      44: goto          54
      47: aload_0
      48: getfield      #145                // Field playerInfoPanel:Lagolf/game/PlayerInfoPanel;
      51: invokevirtual #493                // Method agolf/game/PlayerInfoPanel.stopTimer:()V
      54: iconst_1
      55: ireturn
    Exception table:
       from    to  target type
           7    17    28   any
          18    25    28   any
          28    31    28   any

  private void create(java.awt.Image);
    Code:
       0: aload_0
       1: getfield      #7                  // Field gameContainer:Lagolf/GameContainer;
       4: getfield      #339                // Field agolf/GameContainer.golfGameFrame:Lagolf/GolfGameFrame;
       7: getfield      #618                // Field agolf/GolfGameFrame.syncIsValidSite:Lagolf/SynchronizedBool;
      10: invokevirtual #136                // Method agolf/SynchronizedBool.get:()Z
      13: ifeq          184
      16: aload_0
      17: aconst_null
      18: invokevirtual #621                // Method setLayout:(Ljava/awt/LayoutManager;)V
      21: aload_0
      22: new           #150                // class agolf/game/PlayerInfoPanel
      25: dup
      26: aload_0
      27: getfield      #7                  // Field gameContainer:Lagolf/GameContainer;
      30: sipush        735
      33: bipush        60
      35: invokespecial #625                // Method agolf/game/PlayerInfoPanel."<init>":(Lagolf/GameContainer;II)V
      38: putfield      #145                // Field playerInfoPanel:Lagolf/game/PlayerInfoPanel;
      41: aload_0
      42: getfield      #145                // Field playerInfoPanel:Lagolf/game/PlayerInfoPanel;
      45: iconst_0
      46: iconst_0
      47: invokevirtual #628                // Method agolf/game/PlayerInfoPanel.setLocation:(II)V
      50: aload_0
      51: aload_0
      52: getfield      #145                // Field playerInfoPanel:Lagolf/game/PlayerInfoPanel;
      55: invokevirtual #631                // Method add:(Ljava/awt/Component;)Ljava/awt/Component;
      58: pop
      59: aload_0
      60: getfield      #7                  // Field gameContainer:Lagolf/GameContainer;
      63: getfield      #635                // Field agolf/GameContainer.imageManager:Lcom/aapeli/client/ImageManager;
      66: ldc_w         #639                // String game-cursor
      69: invokevirtual #641                // Method com/aapeli/client/ImageManager.getImage:(Ljava/lang/String;)Ljava/awt/Image;
      72: astore_2
      73: invokestatic  #647                // Method java/awt/Toolkit.getDefaultToolkit:()Ljava/awt/Toolkit;
      76: astore_3
      77: aload_3
      78: aload_2
      79: new           #653                // class java/awt/Point
      82: dup
      83: bipush        11
      85: bipush        11
      87: invokespecial #655                // Method java/awt/Point."<init>":(II)V
      90: ldc_w         #639                // String game-cursor
      93: invokevirtual #657                // Method java/awt/Toolkit.createCustomCursor:(Ljava/awt/Image;Ljava/awt/Point;Ljava/lang/String;)Ljava/awt/Cursor;
      96: astore        4
      98: aload_0
      99: new           #178                // class agolf/game/GameCanvas
     102: dup
     103: aload_0
     104: getfield      #7                  // Field gameContainer:Lagolf/GameContainer;
     107: aload_1
     108: aload         4
     110: invokespecial #661                // Method agolf/game/GameCanvas."<init>":(Lagolf/GameContainer;Ljava/awt/Image;Ljava/awt/Cursor;)V
     113: putfield      #173                // Field gameCanvas:Lagolf/game/GameCanvas;
     116: aload_0
     117: getfield      #173                // Field gameCanvas:Lagolf/game/GameCanvas;
     120: iconst_0
     121: bipush        65
     123: invokevirtual #664                // Method agolf/game/GameCanvas.setLocation:(II)V
     126: aload_0
     127: aload_0
     128: getfield      #173                // Field gameCanvas:Lagolf/game/GameCanvas;
     131: invokevirtual #631                // Method add:(Ljava/awt/Component;)Ljava/awt/Component;
     134: pop
     135: aload_0
     136: new           #169                // class agolf/game/GameControlPanel
     139: dup
     140: aload_0
     141: getfield      #7                  // Field gameContainer:Lagolf/GameContainer;
     144: aload_0
     145: getfield      #145                // Field playerInfoPanel:Lagolf/game/PlayerInfoPanel;
     148: bipush        95
     150: bipush        80
     152: invokespecial #665                // Method agolf/game/GameControlPanel."<init>":(Lagolf/GameContainer;Lagolf/game/PlayerInfoPanel;II)V
     155: putfield      #164                // Field gameControlPanel:Lagolf/game/GameControlPanel;
     158: aload_0
     159: getfield      #164                // Field gameControlPanel:Lagolf/game/GameControlPanel;
     162: aload_0
     163: getfield      #13                 // Field width:I
     166: bipush        95
     168: isub
     169: sipush        445
     172: invokevirtual #668                // Method agolf/game/GameControlPanel.setLocation:(II)V
     175: aload_0
     176: aload_0
     177: getfield      #164                // Field gameControlPanel:Lagolf/game/GameControlPanel;
     180: invokevirtual #631                // Method add:(Ljava/awt/Component;)Ljava/awt/Component;
     183: pop
     184: return

  private void addMultiPlayerPanels(int);
    Code:
       0: aload_0
       1: getfield      #7                  // Field gameContainer:Lagolf/GameContainer;
       4: getfield      #339                // Field agolf/GameContainer.golfGameFrame:Lagolf/GolfGameFrame;
       7: getfield      #618                // Field agolf/GolfGameFrame.syncIsValidSite:Lagolf/SynchronizedBool;
      10: invokevirtual #136                // Method agolf/SynchronizedBool.get:()Z
      13: ifeq          148
      16: aload_0
      17: iconst_0
      18: invokevirtual #669                // Method setVisible:(Z)V
      21: iload_1
      22: ifle          31
      25: sipush        265
      28: goto          34
      31: sipush        400
      34: istore_2
      35: aload_0
      36: new           #250                // class agolf/game/ChatPanel
      39: dup
      40: aload_0
      41: getfield      #7                  // Field gameContainer:Lagolf/GameContainer;
      44: aload_0
      45: getfield      #13                 // Field width:I
      48: bipush        100
      50: isub
      51: iconst_5
      52: isub
      53: iload_2
      54: isub
      55: iconst_5
      56: isub
      57: bipush        80
      59: iload_1
      60: invokespecial #673                // Method agolf/game/ChatPanel."<init>":(Lagolf/GameContainer;III)V
      63: putfield      #240                // Field chatPanel:Lagolf/game/ChatPanel;
      66: aload_0
      67: getfield      #240                // Field chatPanel:Lagolf/game/ChatPanel;
      70: iconst_0
      71: sipush        445
      74: invokevirtual #676                // Method agolf/game/ChatPanel.setLocation:(II)V
      77: aload_0
      78: aload_0
      79: getfield      #240                // Field chatPanel:Lagolf/game/ChatPanel;
      82: invokevirtual #631                // Method add:(Ljava/awt/Component;)Ljava/awt/Component;
      85: pop
      86: aload_0
      87: new           #160                // class agolf/game/TrackInfoPanel
      90: dup
      91: aload_0
      92: getfield      #7                  // Field gameContainer:Lagolf/GameContainer;
      95: iload_2
      96: bipush        80
      98: iload_1
      99: ifne          106
     102: iconst_1
     103: goto          107
     106: iconst_0
     107: invokespecial #677                // Method agolf/game/TrackInfoPanel."<init>":(Lagolf/GameContainer;IIZ)V
     110: putfield      #155                // Field trackInfoPanel:Lagolf/game/TrackInfoPanel;
     113: aload_0
     114: getfield      #155                // Field trackInfoPanel:Lagolf/game/TrackInfoPanel;
     117: aload_0
     118: getfield      #13                 // Field width:I
     121: bipush        100
     123: isub
     124: iconst_5
     125: isub
     126: iload_2
     127: isub
     128: sipush        445
     131: invokevirtual #680                // Method agolf/game/TrackInfoPanel.setLocation:(II)V
     134: aload_0
     135: aload_0
     136: getfield      #155                // Field trackInfoPanel:Lagolf/game/TrackInfoPanel;
     139: invokevirtual #631                // Method add:(Ljava/awt/Component;)Ljava/awt/Component;
     142: pop
     143: aload_0
     144: iconst_1
     145: invokevirtual #669                // Method setVisible:(Z)V
     148: return

  private void setState(int);
    Code:
       0: iload_1
       1: aload_0
       2: getfield      #39                 // Field state:I
       5: if_icmpeq     29
       8: aload_0
       9: iload_1
      10: putfield      #39                 // Field state:I
      13: aload_0
      14: getfield      #145                // Field playerInfoPanel:Lagolf/game/PlayerInfoPanel;
      17: iload_1
      18: invokevirtual #681                // Method agolf/game/PlayerInfoPanel.setState:(I)V
      21: aload_0
      22: getfield      #164                // Field gameControlPanel:Lagolf/game/GameControlPanel;
      25: iload_1
      26: invokevirtual #682                // Method agolf/game/GameControlPanel.setState:(I)V
      29: return

  private java.lang.String encodeCoords(int, int, int);
    Code:
       0: iload_1
       1: sipush        375
       4: imul
       5: iconst_4
       6: imul
       7: iload_2
       8: iconst_4
       9: imul
      10: iadd
      11: iload_3
      12: iadd
      13: istore        4
      15: iload         4
      17: bipush        36
      19: invokestatic  #683                // Method java/lang/Integer.toString:(II)Ljava/lang/String;
      22: astore        5
      24: aload         5
      26: invokevirtual #686                // Method java/lang/String.length:()I
      29: iconst_4
      30: if_icmpge     45
      33: aload         5
      35: invokedynamic #689,  0            // InvokeDynamic #19:makeConcatWithConstants:(Ljava/lang/String;)Ljava/lang/String;
      40: astore        5
      42: goto          24
      45: aload         5
      47: areturn
}
