diff -r 6e8b807bda4b -r ba39a1d396c0 hedgewars/uStore.pas --- a/hedgewars/uStore.pas Sun Jun 10 18:56:51 2018 +0200 +++ b/hedgewars/uStore.pas Sun Jun 10 19:12:26 2018 +0200 @@ -62,7 +62,7 @@ implementation uses uMisc, uConsole, uVariables, uUtils, uTextures, uRender, uRenderUtils, - uCommands, uPhysFSLayer, uDebug, adler32 + uCommands, uPhysFSLayer, uDebug, uLocale, uInputHandler, adler32 {$IFDEF USE_CONTEXT_RESTORE}, uWorld{$ENDIF}; //type TGPUVendor = (gvUnknown, gvNVIDIA, gvATI, gvIntel, gvApple); @@ -189,9 +189,13 @@ for t:= 0 to Pred(TeamsCount) do with TeamsArray[t]^ do begin - NameTagTex:= RenderStringTexLim(ansistring(TeamName), Clan^.Color, Font, cTeamHealthWidth); + if ExtDriven then + NameTagTex:= RenderStringTexLim(ansistring(TeamName), Clan^.Color, Font, cTeamHealthWidth) + else NameTagTex:= RenderStringTex(ansistring(TeamName), Clan^.Color, Font); if length(Owner) > 0 then - OwnerTex:= RenderStringTexLim(ansistring(Owner), Clan^.Color, Font, cTeamHealthWidth); + if ExtDriven then + OwnerTex:= RenderStringTexLim(ansistring(Owner), Clan^.Color, Font, cTeamHealthWidth) + else OwnerTex:= RenderStringTex(ansistring(Owner), Clan^.Color, Font); r.x:= 0; r.y:= 0; @@ -261,6 +265,7 @@ if not allOK then exit; AIKillsTex := RenderStringTex(ansistring(inttostr(stats.AIKills)), Clan^.Color, fnt16); + LuaTeamValueTex := RenderStringTex(LuaTeamValue, Clan^.Color, fnt16); dec(drY, r.h + 2); DrawHealthY:= drY; @@ -268,7 +273,9 @@ with Hedgehogs[i] do if Gear <> nil then begin - NameTagTex:= RenderStringTexLim(ansistring(Name), Clan^.Color, fnt16, cTeamHealthWidth); + if ExtDriven then + NameTagTex:= RenderStringTexLim(ansistring(Name), Clan^.Color, fnt16, cTeamHealthWidth) + else NameTagTex:= RenderStringTex(ansistring(Name), Clan^.Color, fnt16); if Hat = 'NoHat' then begin if (month = 4) and (md = 20) then @@ -372,6 +379,7 @@ ai: TAmmoType; tmpsurf, tmpoverlay: PSDL_Surface; i, y, imflags: LongInt; + keyConfirm, keyQuit: shortstring; begin AddFileLog('StoreLoad()'); @@ -499,7 +507,9 @@ PauseTexture:= RenderStringTex(trmsg[sidPaused], cYellowColor, fntBig); AFKTexture:= RenderStringTex(trmsg[sidAFK], cYellowColor, fntBig); - ConfirmTexture:= RenderStringTex(trmsg[sidConfirm], cYellowColor, fntBig); + keyConfirm:= KeyBindToName('confirm'); + keyQuit:= KeyBindToName('quit'); + ConfirmTexture:= RenderStringTex(Format(trmsg[sidConfirm], [keyConfirm, keyQuit]), cYellowColor, fntBig); SyncTexture:= RenderStringTex(trmsg[sidSync], cYellowColor, fntBig); if not reload then @@ -998,24 +1008,21 @@ extra:= _S''; extracolor:= 0; -if (CurrentTeam <> nil) and (Ammoz[atype].SkipTurns >= CurrentTeam^.Clan^.TurnNumber) then // weapon or utility is not yet available - begin - if (atype = amTardis) and (suddenDeathDmg) then - extra:= trmsg[sidNotAvailableInSD] - else - extra:= trmsg[sidNotYetAvailable]; - extracolor:= LongInt($ffc77070); - end -else if (Ammoz[atype].Ammo.Propz and ammoprop_NoRoundEnd) <> 0 then // weapon or utility will not end your turn - begin - extra:= trmsg[sidNoEndTurn]; - extracolor:= LongInt($ff70c770); - end -else - begin - extra:= _S''; - extracolor:= 0; - end; +if (trluaammoe[Ammoz[atype].NameId] = true) then + if (CurrentTeam <> nil) and (Ammoz[atype].SkipTurns >= CurrentTeam^.Clan^.TurnNumber) then // weapon or utility is not yet available + begin + if (atype = amTardis) and (SuddenDeathActive) then + extra:= trmsg[sidNotAvailableInSD] + else + extra:= trmsg[sidNotYetAvailable]; + extracolor:= LongInt($ffc77070); + end + else if (((GameFlags and gfInfAttack) <> 0) and ((Ammoz[atype].Ammo.Propz and ammoprop_ForceTurnEnd) = 0)) or ((Ammoz[atype].Ammo.Propz and ammoprop_NoRoundEnd) <> 0) then + // weapon or utility will not end your turn + begin + extra:= trmsg[sidNoEndTurn]; + extracolor:= LongInt($ff70c770); + end; if length(trluaammo[Ammoz[atype].NameId]) > 0 then ammoname := trluaammo[Ammoz[atype].NameId]