22
33import com .sun .jna .Pointer ;
44
5- final class ClientData {
6- private WrappedBuffer buffer ;
7- private GameData gameData ;
5+ class ClientData {
6+ WrappedBuffer buffer ;
7+ GameData gameData ;
88 ClientData () {
9- gameData = new ClientData .GameData (0 );
9+ gameData = createGameData (0 );
10+ }
11+ GameData createGameData (int offset ) {
12+ return new ClientData .GameData (offset );
1013 }
1114 GameData gameData () {
1215 return gameData ;
@@ -17,9 +20,12 @@ void setBuffer(WrappedBuffer buffer) {
1720 void setPointer (Pointer pointer ) {
1821 setBuffer (new WrappedBuffer (pointer , GameData .SIZE ));
1922 }
23+ WrappedBuffer getStaticBuffer () {
24+ return buffer ;
25+ }
2026 class UnitCommand {
2127 static final int SIZE = 24 ;
22- private int myOffset ;
28+ protected int myOffset ;
2329 UnitCommand (int myOffset ) {
2430 this .myOffset = myOffset ;
2531 }
@@ -68,7 +74,7 @@ void setExtra(int value) {
6874 }
6975 class GameData {
7076 static final int SIZE = 33017048 ;
71- private int myOffset ;
77+ protected int myOffset ;
7278 GameData (int myOffset ) {
7379 this .myOffset = myOffset ;
7480 }
@@ -701,7 +707,7 @@ void setIsSolid(boolean value) {
701707 }
702708 class Command {
703709 static final int SIZE = 12 ;
704- private int myOffset ;
710+ protected int myOffset ;
705711 Command (int myOffset ) {
706712 this .myOffset = myOffset ;
707713 }
@@ -729,7 +735,7 @@ void setValue2(int value) {
729735 }
730736 class Position {
731737 static final int SIZE = 8 ;
732- private int myOffset ;
738+ protected int myOffset ;
733739 Position (int myOffset ) {
734740 this .myOffset = myOffset ;
735741 }
@@ -750,7 +756,7 @@ void setY(int value) {
750756 }
751757 class Event {
752758 static final int SIZE = 12 ;
753- private int myOffset ;
759+ protected int myOffset ;
754760 Event (int myOffset ) {
755761 this .myOffset = myOffset ;
756762 }
@@ -784,94 +790,94 @@ class RegionData {
784790 }
785791 int getId () {
786792 int offset = myOffset + 0 ;
787- return buffer .getInt (offset );
793+ return getStaticBuffer () .getInt (offset );
788794 }
789795 void setId (int value ) {
790- buffer .putInt (myOffset + 0 , value );
796+ getStaticBuffer () .putInt (myOffset + 0 , value );
791797 }
792798 int islandID () {
793799 int offset = myOffset + 4 ;
794- return buffer .getInt (offset );
800+ return getStaticBuffer () .getInt (offset );
795801 }
796802 void setIslandID (int value ) {
797- buffer .putInt (myOffset + 4 , value );
803+ getStaticBuffer () .putInt (myOffset + 4 , value );
798804 }
799805 int getCenter_x () {
800806 int offset = myOffset + 8 ;
801- return buffer .getInt (offset );
807+ return getStaticBuffer () .getInt (offset );
802808 }
803809 void setCenter_x (int value ) {
804- buffer .putInt (myOffset + 8 , value );
810+ getStaticBuffer () .putInt (myOffset + 8 , value );
805811 }
806812 int getCenter_y () {
807813 int offset = myOffset + 12 ;
808- return buffer .getInt (offset );
814+ return getStaticBuffer () .getInt (offset );
809815 }
810816 void setCenter_y (int value ) {
811- buffer .putInt (myOffset + 12 , value );
817+ getStaticBuffer () .putInt (myOffset + 12 , value );
812818 }
813819 int getPriority () {
814820 int offset = myOffset + 16 ;
815- return buffer .getInt (offset );
821+ return getStaticBuffer () .getInt (offset );
816822 }
817823 void setPriority (int value ) {
818- buffer .putInt (myOffset + 16 , value );
824+ getStaticBuffer () .putInt (myOffset + 16 , value );
819825 }
820826 int getLeftMost () {
821827 int offset = myOffset + 20 ;
822- return buffer .getInt (offset );
828+ return getStaticBuffer () .getInt (offset );
823829 }
824830 void setLeftMost (int value ) {
825- buffer .putInt (myOffset + 20 , value );
831+ getStaticBuffer () .putInt (myOffset + 20 , value );
826832 }
827833 int getRightMost () {
828834 int offset = myOffset + 24 ;
829- return buffer .getInt (offset );
835+ return getStaticBuffer () .getInt (offset );
830836 }
831837 void setRightMost (int value ) {
832- buffer .putInt (myOffset + 24 , value );
838+ getStaticBuffer () .putInt (myOffset + 24 , value );
833839 }
834840 int getTopMost () {
835841 int offset = myOffset + 28 ;
836- return buffer .getInt (offset );
842+ return getStaticBuffer () .getInt (offset );
837843 }
838844 void setTopMost (int value ) {
839- buffer .putInt (myOffset + 28 , value );
845+ getStaticBuffer () .putInt (myOffset + 28 , value );
840846 }
841847 int getBottomMost () {
842848 int offset = myOffset + 32 ;
843- return buffer .getInt (offset );
849+ return getStaticBuffer () .getInt (offset );
844850 }
845851 void setBottomMost (int value ) {
846- buffer .putInt (myOffset + 32 , value );
852+ getStaticBuffer () .putInt (myOffset + 32 , value );
847853 }
848854 int getNeighborCount () {
849855 int offset = myOffset + 36 ;
850- return buffer .getInt (offset );
856+ return getStaticBuffer () .getInt (offset );
851857 }
852858 void setNeighborCount (int value ) {
853- buffer .putInt (myOffset + 36 , value );
859+ getStaticBuffer () .putInt (myOffset + 36 , value );
854860 }
855861 int getNeighbors (int i ) {
856862 int offset = myOffset + 40 + 4 * 1 * i ;
857- return buffer .getInt (offset );
863+ return getStaticBuffer () .getInt (offset );
858864 }
859865 void setNeighbors (int i , int value ) {
860- buffer .putInt (myOffset + 40 + 4 * 1 * i , value );
866+ getStaticBuffer () .putInt (myOffset + 40 + 4 * 1 * i , value );
861867 }
862868 boolean isAccessible () {
863869 int offset = myOffset + 1064 ;
864- return buffer .getByte (offset ) != 0 ;
870+ return getStaticBuffer () .getByte (offset ) != 0 ;
865871 }
866872 void setIsAccessible (boolean value ) {
867- buffer .putByte (myOffset + 1064 , (byte ) (value ? 1 : 0 ));
873+ getStaticBuffer () .putByte (myOffset + 1064 , (byte ) (value ? 1 : 0 ));
868874 }
869875 boolean isHigherGround () {
870876 int offset = myOffset + 1065 ;
871- return buffer .getByte (offset ) != 0 ;
877+ return getStaticBuffer () .getByte (offset ) != 0 ;
872878 }
873879 void setIsHigherGround (boolean value ) {
874- buffer .putByte (myOffset + 1065 , (byte ) (value ? 1 : 0 ));
880+ getStaticBuffer () .putByte (myOffset + 1065 , (byte ) (value ? 1 : 0 ));
875881 }
876882 }
877883 class ForceData {
@@ -2002,4 +2008,3 @@ void setReplayID(int value) {
20022008 }
20032009 }
20042010}
2005-
0 commit comments