index d1b2c67a43a94a473d45d508cb898f4d0eae6ad5..609c309e4936e8b0851fe94cd43612a4d28e9577 100644 (file)
--- a/src/game/g_triggers.pas
+++ b/src/game/g_triggers.pas
+{$MODE DELPHI}
unit g_triggers;
interface
uses
g_player, g_map, Math, g_gfx, g_game, g_textures,
g_console, g_monsters, g_items, g_phys, g_weapons,
- WADEDITOR, g_main, SysUtils, e_log, g_language,
+ wadreader, g_main, SysUtils, e_log, g_language,
g_options, g_net, g_netmsg;
const
TRIGGER_PRESS, TRIGGER_ON, TRIGGER_OFF, TRIGGER_ONOFF:
begin
PressCount := PressCount + 1;
-
+
if PressTime = -1 then
PressTime := Data.Wait;
p := g_Player_Get(ActivateUID);
if p = nil then
Exit;
-
+
if Data.ResetVel then
begin
p.GameVelX := 0;
// Åùå íåò òàêîãî çâóêà:
if not g_Sound_Exists(Trigger.Data.SoundName) then
begin
- g_ProcessResourceStr(Trigger.Data.SoundName, @fn, nil, nil);
+ fn := g_ExtractWadName(Trigger.Data.SoundName);
if fn = '' then
begin // Çâóê â ôàéëå ñ êàðòîé
- g_ProcessResourceStr(gMapInfo.Map, @mapw, nil, nil);
- fn := mapw + Trigger.Data.SoundName;
+ mapw := g_ExtractWadName(gMapInfo.Map);
+ fn := mapw+':'+g_ExtractFilePathName(Trigger.Data.SoundName);
end
else // Çâóê â îòäåëüíîì ôàéëå
fn := GameDir + '/wads/' + Trigger.Data.SoundName;
// Åùå íåò òàêîé ìóçûêè:
if not g_Sound_Exists(Trigger.Data.MusicName) then
begin
- g_ProcessResourceStr(Trigger.Data.MusicName, @fn, nil, nil);
+ fn := g_ExtractWadName(Trigger.Data.MusicName);
if fn = '' then
begin // Ìóçûêà â ôàéëå ñ êàðòîé
- g_ProcessResourceStr(gMapInfo.Map, @mapw, nil, nil);
- fn := mapw + Trigger.Data.MusicName;
+ mapw := g_ExtractWadName(gMapInfo.Map);
+ fn := mapw+':'+g_ExtractFilePathName(Trigger.Data.MusicName);
end
else // Ìóçûêà â ôàéëå ñ êàðòîé
fn := GameDir+'/wads/'+Trigger.Data.MusicName;