X-Git-Url: http://deadsoftware.ru/gitweb?a=blobdiff_plain;f=src%2Fgame%2Fg_triggers.pas;h=9afef5d07f739b05a05d2c2791d62d9f94c34414;hb=b1e7f99d9eea1711acf7471e9827500acccc5820;hp=3cfca16904004997968584ee954eefc307e92c79;hpb=414f2873efa0cce84499f64774db7000e6268971;p=d2df-sdl.git diff --git a/src/game/g_triggers.pas b/src/game/g_triggers.pas index 3cfca16..9afef5d 100644 --- a/src/game/g_triggers.pas +++ b/src/game/g_triggers.pas @@ -725,37 +725,37 @@ begin TRIGGER_SHOT_IMP: begin - g_Weapon_ball1(wx, wy, dx, dy, 0, -1, True); + g_Weapon_ball1(wx, wy, dx, dy, 0, -1, True, False); snd := 'SOUND_WEAPON_FIREBALL'; end; TRIGGER_SHOT_PLASMA: begin - g_Weapon_Plasma(wx, wy, dx, dy, 0, -1, True); + g_Weapon_Plasma(wx, wy, dx, dy, 0, -1, True, False); snd := 'SOUND_WEAPON_FIREPLASMA'; end; TRIGGER_SHOT_SPIDER: begin - g_Weapon_aplasma(wx, wy, dx, dy, 0, -1, True); + g_Weapon_aplasma(wx, wy, dx, dy, 0, -1, True, False); snd := 'SOUND_WEAPON_FIREPLASMA'; end; TRIGGER_SHOT_CACO: begin - g_Weapon_ball2(wx, wy, dx, dy, 0, -1, True); + g_Weapon_ball2(wx, wy, dx, dy, 0, -1, True, False); snd := 'SOUND_WEAPON_FIREBALL'; end; TRIGGER_SHOT_BARON: begin - g_Weapon_ball7(wx, wy, dx, dy, 0, -1, True); + g_Weapon_ball7(wx, wy, dx, dy, 0, -1, True, False); snd := 'SOUND_WEAPON_FIREBALL'; end; TRIGGER_SHOT_MANCUB: begin - g_Weapon_manfire(wx, wy, dx, dy, 0, -1, True); + g_Weapon_manfire(wx, wy, dx, dy, 0, -1, True, False); snd := 'SOUND_WEAPON_FIREBALL'; end; @@ -767,13 +767,13 @@ begin TRIGGER_SHOT_ROCKET: begin - g_Weapon_Rocket(wx, wy, dx, dy, 0, -1, True); + g_Weapon_Rocket(wx, wy, dx, dy, 0, -1, True, False); snd := 'SOUND_WEAPON_FIREROCKET'; end; TRIGGER_SHOT_BFG: begin - g_Weapon_BFGShot(wx, wy, dx, dy, 0, -1, True); + g_Weapon_BFGShot(wx, wy, dx, dy, 0, -1, True, False); snd := 'SOUND_WEAPON_FIREBFG'; end; @@ -807,7 +807,7 @@ begin TRIGGER_SHOT_FLAME: begin - g_Weapon_flame(wx, wy, dx, dy, 0, -1, True); + g_Weapon_flame(wx, wy, dx, dy, 0, -1, True, False); snd := 'SOUND_GAME_BURNING'; end; @@ -1224,7 +1224,7 @@ begin if not Trigger.Enabled then exit; if (Trigger.TimeOut <> 0) and (actType <> ACTIVATE_CUSTOM) then exit; - if (gLMSRespawn = LMS_RESPAWN_WARMUP) then exit; + if (gLMSRespawn > LMS_RESPAWN_NONE) then exit; if (Trigger.exoCheck <> nil) then begin @@ -1349,17 +1349,13 @@ begin begin Enabled := False; Result := True; - if gLMSRespawn = LMS_RESPAWN_NONE then + p := g_Player_Get(ActivateUID); + p.GetSecret(); + Inc(gCoopSecretsFound); + if g_Game_IsNet then begin - p := g_Player_Get(ActivateUID); - p.GetSecret(); - Inc(gCoopSecretsFound); - if g_Game_IsNet then - begin - MH_SEND_GameStats(); - if p.FClientID >= 0 then - MH_SEND_GameEvent(NET_EV_SECRET, p.UID, ''); - end; + MH_SEND_GameStats(); + MH_SEND_GameEvent(NET_EV_SECRET, p.UID, ''); end; end; @@ -2599,8 +2595,9 @@ var begin if (tgMonsList = nil) then tgMonsList := TSimpleMonsterList.Create(); - if gTriggers = nil then - Exit; + if gTriggers = nil then Exit; + if gLMSRespawn > LMS_RESPAWN_NONE then Exit; // don't update triggers at all + SetLength(Affected, 0); for a := 0 to High(gTriggers) do