diff --git a/src/game/g_map.pas b/src/game/g_map.pas
index 6b64d8818ead94d6f3c925bd0dabfd68589e242f..f2922d4a9622c4f47d342a973a4e58b79d8b4694 100644 (file)
--- a/src/game/g_map.pas
+++ b/src/game/g_map.pas
end;
end;
-procedure CreateTrigger(Trigger: TDynRecord; atpanid, atrigpanid: Integer; fTexturePanel1Type, fTexturePanel2Type: Word);
+procedure CreateTrigger (amapIdx: Integer; Trigger: TDynRecord; atpanid, atrigpanid: Integer; fTexturePanel1Type, fTexturePanel2Type: Word);
var
_trigger: TTrigger;
begin
with _trigger do
begin
mapId := Trigger.id;
+ mapIndex := amapIdx;
X := Trigger.X;
Y := Trigger.Y;
Width := Trigger.Width;
function monsDieTrig (mon: TMonster): Boolean;
var
a: Integer;
+ //tw: TStrTextWriter;
begin
result := false; // don't stop
mon.ClearTriggers();
if gTriggers[a].TriggerType in [TRIGGER_PRESS, TRIGGER_ON, TRIGGER_OFF, TRIGGER_ONOFF] then
begin
//if (gTriggers[a].Data.MonsterID-1) = Integer(mon.StartID) then mon.AddTrigger(a);
+ {
+ tw := TStrTextWriter.Create();
+ try
+ gTriggers[a].trigData.writeTo(tw);
+ e_LogWritefln('=== trigger #%s ==='#10'%s'#10'---', [a, tw.str]);
+ finally
+ tw.Free();
+ end;
+ }
if (gTriggers[a].trigData.trigMonsterId) = Integer(mon.StartID) then mon.AddTrigger(a);
end;
end;
else if (TriggersTable[trignum].ShotPanelIdx <> -1) then tgpid := TriggersTable[trignum].ShotPanelIdx
else tgpid := -1;
//e_LogWritefln('creating trigger #%s; texpantype=%s; shotpantype=%s (%d,%d)', [trignum, b, c, TriggersTable[trignum].texPanIdx, TriggersTable[trignum].ShotPanelIdx]);
- CreateTrigger(rec, TriggersTable[trignum].texPanIdx, tgpid, Word(b), Word(c));
+ CreateTrigger(trignum, rec, TriggersTable[trignum].texPanIdx, tgpid, Word(b), Word(c));
end;
end;