hedgewars/hwLibrary.pas
branchqmlfrontend
changeset 12863 0c6fb706f747
parent 12862 90f927b4b9e1
child 12864 a03f245243b0
equal deleted inserted replaced
12862:90f927b4b9e1 12863:0c6fb706f747
    33     , uTypes
    33     , uTypes
    34     , uConsts
    34     , uConsts
    35     , uVariables
    35     , uVariables
    36     , uSound
    36     , uSound
    37     , uCommands
    37     , uCommands
    38     , uUtils
       
    39     , uLocale
       
    40     {$IFDEF ANDROID}, jni{$ENDIF}
       
    41     , uFLTypes
    38     , uFLTypes
    42     , uFLIPC
    39     , uFLIPC
    43     , uPhysFSLayer
    40     , uPhysFSLayer
    44     , uFLUICallback
    41     , uFLUICallback
    45     , uFLRunQueue
    42     , uFLRunQueue
    46     ;
    43     ;
    47 
    44 
    48 {$INCLUDE "config.inc"}
    45 {$INCLUDE "config.inc"}
    49 
       
    50 // retrieve protocol information
       
    51 procedure HW_versionInfo(netProto: PLongInt; versionStr: PPChar); cdecl;
       
    52 begin
       
    53     netProto^:= cNetProtoVersion;
       
    54     versionStr^:= cVersionString;
       
    55 end;
       
    56 
       
    57 function HW_versionString: PChar; cdecl;
       
    58 begin
       
    59     exit(cVersionString + '-r' + cRevisionString + ' (' + cHashString + ')');
       
    60 end;
       
    61 
       
    62 // equivalent to esc+y; when closeFrontend = true the game exits after memory cleanup
       
    63 procedure HW_terminate(closeFrontend: boolean); cdecl;
       
    64 begin
       
    65     closeFrontend:= closeFrontend; // avoid hint
       
    66     ParseCommand('forcequit', true);
       
    67 end;
       
    68 
       
    69 function HW_getWeaponNameByIndex(whichone: LongInt): PChar; cdecl;
       
    70 begin
       
    71     HW_getWeaponNameByIndex:= (str2pchar(trammo[Ammoz[TAmmoType(whichone+1)].NameId]));
       
    72 end;
       
    73 
       
    74 (*function HW_getWeaponCaptionByIndex(whichone: LongInt): PChar; cdecl;
       
    75 begin
       
    76     HW_getWeaponCaptionByIndex:= (str2pchar(trammoc[Ammoz[TAmmoType(whichone+1)].NameId]));
       
    77 end;
       
    78 
       
    79 function HW_getWeaponDescriptionByIndex(whichone: LongInt): PChar; cdecl;
       
    80 begin
       
    81     HW_getWeaponDescriptionByIndex:= (str2pchar(trammod[Ammoz[TAmmoType(whichone+1)].NameId]));
       
    82 end;*)
       
    83 
       
    84 function HW_getNumberOfWeapons: LongInt; cdecl;
       
    85 begin
       
    86     HW_getNumberOfWeapons:= ord(high(TAmmoType));
       
    87 end;
       
    88 
       
    89 function HW_getMaxNumberOfHogs: LongInt; cdecl;
       
    90 begin
       
    91     HW_getMaxNumberOfHogs:= cMaxHHIndex + 1;
       
    92 end;
       
    93 
       
    94 function HW_getMaxNumberOfTeams: LongInt; cdecl;
       
    95 begin
       
    96     HW_getMaxNumberOfTeams:= cMaxTeams;
       
    97 end;
       
    98 
       
    99 procedure HW_memoryWarningCallback; cdecl;
       
   100 begin
       
   101     ReleaseSound(false);
       
   102 end;
       
   103 
    46 
   104 procedure flibInit(localPrefix, userPrefix: PChar); cdecl;
    47 procedure flibInit(localPrefix, userPrefix: PChar); cdecl;
   105 begin
    48 begin
   106     initIPC;
    49     initIPC;
   107     uPhysFSLayer.initModule(localPrefix, userPrefix);
    50     uPhysFSLayer.initModule(localPrefix, userPrefix);
   111 begin
    54 begin
   112     uPhysFSLayer.freemodule;
    55     uPhysFSLayer.freemodule;
   113     freeIPC;
    56     freeIPC;
   114 end;
    57 end;
   115 
    58 
   116 {$IFDEF ANDROID}
       
   117 function JNI_HW_versionInfoNet(env: PJNIEnv; obj: JObject):JInt;cdecl;
       
   118 begin
       
   119     env:= env; // avoid hint
       
   120     obj:= obj; // avoid hint
       
   121     JNI_HW_versionInfoNet:= cNetProtoVersion;
       
   122 end;
       
   123 
       
   124 function JNI_HW_versionInfoVersion(env: PJNIEnv; obj: JObject):JString; cdecl;
       
   125 var envderef : JNIEnv;
       
   126 begin
       
   127     obj:= obj; // avoid hint
       
   128     envderef:= @env;
       
   129     JNI_HW_versionInfoVersion := envderef^.NewStringUTF(env, PChar(cVersionString));
       
   130 end;
       
   131 
       
   132 procedure JNI_HW_GenLandPreview(env: PJNIEnv; c: JClass; port: JInt); cdecl;
       
   133 begin
       
   134     GenLandPreview(port);
       
   135 end;
       
   136 
       
   137 exports
       
   138     JNI_HW_versionInfoNet name Java_Prefix+'HWversionInfoNetProto',
       
   139     JNI_HW_versionInfoVersion name Java_Prefix+'HWversionInfoVersion',
       
   140     JNI_HW_GenLandPreview name Java_Prefix + 'HWGenLandPreview',
       
   141     HW_getNumberOfweapons name Java_Prefix + 'HWgetNumberOfWeapons',
       
   142     HW_getMaxNumberOfHogs name Java_Prefix + 'HWgetMaxNumberOfHogs',
       
   143     HW_getMaxNumberOfTeams name Java_Prefix + 'HWgetMaxNumberOfTeams',
       
   144     Game;
       
   145 {$ELSE}
       
   146 exports
    59 exports
   147     registerUIMessagesCallback,
    60     registerUIMessagesCallback,
   148     flibInit,
    61     flibInit,
   149     flibFree
    62     flibFree,
       
    63     queueExecution
   150     ;
    64     ;
   151 {$ENDIF}
       
   152 
    65 
   153 begin
    66 begin
   154 end.
    67 end.