hedgewars/uStats.pas
branch0.9.19
changeset 9135 151c8e553de2
parent 9080 9b42757d7e71
child 9138 9e94a9bc8c7e
equal deleted inserted replaced
9132:57ce31b696ff 9135:151c8e553de2
    32 procedure HedgehogDamaged(Gear: PGear; Attacker: PHedgehog; Damage: Longword; killed: boolean);
    32 procedure HedgehogDamaged(Gear: PGear; Attacker: PHedgehog; Damage: Longword; killed: boolean);
    33 procedure Skipped;
    33 procedure Skipped;
    34 procedure TurnReaction;
    34 procedure TurnReaction;
    35 procedure SendStats;
    35 procedure SendStats;
    36 procedure hedgehogFlight(Gear: PGear; time: Longword);
    36 procedure hedgehogFlight(Gear: PGear; time: Longword);
       
    37 procedure declareAchievement(id, teamname: shortstring; value: LongInt);
    37 
    38 
    38 implementation
    39 implementation
    39 uses uSound, uLocale, uVariables, uUtils, uIO, uCaptions, uDebug, uMisc, uConsole;
    40 uses uSound, uLocale, uVariables, uUtils, uIO, uCaptions, uDebug, uMisc, uConsole, uScript;
    40 
    41 
    41 var DamageClan  : Longword = 0;
    42 var DamageClan  : Longword = 0;
    42     DamageTotal : Longword = 0;
    43     DamageTotal : Longword = 0;
    43     DamageTurn  : Longword = 0;
    44     DamageTurn  : Longword = 0;
    44     KillsClan   : LongWord = 0;
    45     KillsClan   : LongWord = 0;
   295 
   296 
   296 // now to console
   297 // now to console
   297 if winnersClan <> nil then 
   298 if winnersClan <> nil then 
   298     begin
   299     begin
   299     WriteLnToConsole('WINNERS');
   300     WriteLnToConsole('WINNERS');
       
   301     WriteLnToConsole(inttostr(winnersClan^.TeamsNumber));
   300     for t:= 0 to winnersClan^.TeamsNumber - 1 do
   302     for t:= 0 to winnersClan^.TeamsNumber - 1 do
   301         WriteLnToConsole(winnersClan^.Teams[t]^.TeamName);
   303         WriteLnToConsole(winnersClan^.Teams[t]^.TeamName);
   302     end
   304     end
   303 else
   305 else
   304     WriteLnToConsole('DRAW');
   306     WriteLnToConsole('DRAW');
   305 
   307 
       
   308 ScriptCall('onAchievementsDeclaration');
       
   309 +end;
       
   310 
   306 WriteLnToConsole('');
   311 WriteLnToConsole('');
   307 end;
   312 end;
   308 
   313 
       
   314 procedure declareAchievement(id, teamname: shortstring; value: LongInt);
       
   315 begin
       
   316     if (length(id) = 0) or (length(teamname) = 0) then exit;
       
   317     WriteLnToConsole('ACHIEVEMENT');
       
   318     WriteLnToConsole(id);
       
   319     WriteLnToConsole(teamname);
       
   320     WriteLnToConsole(inttostr(value));
       
   321 end;
       
   322  
       
   323  
   309 procedure initModule;
   324 procedure initModule;
   310 begin
   325 begin
   311     TotalRounds:= -1;
   326     TotalRounds:= -1;
   312     FinishedTurnsTotal:= -1;
   327     FinishedTurnsTotal:= -1;
   313 end;
   328 end;