hedgewars/uLocale.pas
changeset 2747 7889a3a9724f
parent 2722 d891285e500f
child 2863 9eb53b1f1842
equal deleted inserted replaced
2746:55593f8a490b 2747:7889a3a9724f
    29 			sidHellishBomb, sidDrill, sidBallgun, sidNapalm, sidRCPlane,
    29 			sidHellishBomb, sidDrill, sidBallgun, sidNapalm, sidRCPlane,
    30             sidLowGravity, sidExtraDamage, sidInvulnerable, sidExtraTime,
    30             sidLowGravity, sidExtraDamage, sidInvulnerable, sidExtraTime,
    31             sidLaserSight, sidVampiric, sidSniperRifle, sidJetpack, sidMolotov);
    31             sidLaserSight, sidVampiric, sidSniperRifle, sidJetpack, sidMolotov);
    32 
    32 
    33 	TMsgStrId = (sidStartFight, sidDraw, sidWinner, sidVolume, sidPaused,
    33 	TMsgStrId = (sidStartFight, sidDraw, sidWinner, sidVolume, sidPaused,
    34 			sidConfirm, sidSuddenDeath, sidRemaining, sidFuel, sidSync);
    34 			sidConfirm, sidSuddenDeath, sidRemaining, sidFuel, sidSync,
       
    35 			sidNoEndTurn, sidNotYetAvailable);
    35 
    36 
    36 	TEventId = (eidDied, eidDrowned, eidRoundStart, eidRoundWin, eidRoundDraw,
    37 	TEventId = (eidDied, eidDrowned, eidRoundStart, eidRoundWin, eidRoundDraw,
    37 			eidNewHealthPack, eidNewAmmoPack, eidNewUtilityPack, eidTurnSkipped, eidHurtSelf,
    38 			eidNewHealthPack, eidNewAmmoPack, eidNewUtilityPack, eidTurnSkipped, eidHurtSelf,
    38 			eidHomerun);
    39 			eidHomerun, eidFrozen);
    39 
    40 
    40 const MAX_EVENT_STRINGS = 100;
    41 const MAX_EVENT_STRINGS = 100;
    41 var trammo: array[TAmmoStrId] of string;
    42 var trammo: array[TAmmoStrId] of string;
       
    43     trammoc: array[TAmmoStrId] of string;
       
    44     trammod: array[TAmmoStrId] of string;
    42     trmsg: array[TMsgStrId] of string;
    45     trmsg: array[TMsgStrId] of string;
    43 
    46 
    44 procedure LoadLocale(FileName: string);
    47 procedure LoadLocale(FileName: string);
    45 function Format(fmt: shortstring; var arg: shortstring): shortstring;
    48 function Format(fmt: shortstring; var arg: shortstring): shortstring;
    46 
    49 
    63 loaded:= false;
    66 loaded:= false;
    64 trammo[sidNothing]:= ' ';
    67 trammo[sidNothing]:= ' ';
    65 for e:= Low(TEventId) to High(TEventId) do first[e]:= true;
    68 for e:= Low(TEventId) to High(TEventId) do first[e]:= true;
    66 
    69 
    67 {$I-} // iochecks off
    70 {$I-} // iochecks off
       
    71 Assign(f, FileName);
    68 filemode:= 0; // readonly
    72 filemode:= 0; // readonly
    69 Assign(f, FileName);
    73 Reset(f);
    70 reset(f);
       
    71 if IOResult = 0 then loaded:= true;
    74 if IOResult = 0 then loaded:= true;
    72 TryDo(loaded, 'Cannot load locale "' + FileName + '"', false);
    75 TryDo(loaded, 'Cannot load locale "' + FileName + '"', false);
    73 if loaded then
    76 if loaded then
    74    begin
    77    begin
    75    while not eof(f) do
    78    while not eof(f) do
    96                    first[TEventId(b)]:= false;
    99                    first[TEventId(b)]:= false;
    97                    end;
   100                    end;
    98                trevt[TEventId(b)][trevt_n[TEventId(b)]]:= s;
   101                trevt[TEventId(b)][trevt_n[TEventId(b)]]:= s;
    99                inc(trevt_n[TEventId(b)]);
   102                inc(trevt_n[TEventId(b)]);
   100                end;
   103                end;
       
   104            3: if (b >=0) and (b <= ord(High(TAmmoStrId))) then trammoc[TAmmoStrId(b+1)]:= s;
       
   105            4: if (b >=0) and (b <= ord(High(TAmmoStrId))) then trammod[TAmmoStrId(b+1)]:= s;
   101            end;
   106            end;
   102        end;
   107        end;
   103    Close(f)
   108    Close(f)
   104    end;
   109    end;
   105 {$I+}
   110 {$I+}