diff --git a/src/game/g_map.pas b/src/game/g_map.pas
index e2612f454e3c624895f54eb0c6ae7dce431622ec..c395dab92374f94db5ffefe36903406bf1646bfd 100644 (file)
--- a/src/game/g_map.pas
+++ b/src/game/g_map.pas
trigPanelGUID := atrigpanid;
//trigShotPanelId := ashotpanid;
//Data.Default := Trigger.DATA;
- if (Trigger.trigRec = nil) then
- begin
- trigDataRec := nil;
- //HACK!
- if (TriggerType <> TRIGGER_SECRET) then
- begin
- e_LogWritefln('trigger of type %s has no triggerdata; wtf?!', [TriggerType], MSG_WARNING);
- end;
- end
- else
- begin
- trigDataRec := Trigger.trigRec.clone(nil);
- end;
end;
- result := Integer(g_Triggers_Create(_trigger));
+ result := Integer(g_Triggers_Create(_trigger, Trigger));
end;
procedure CreateMonster(monster: TDynRecord);
var
PAMem: TBinMemoryWriter;
pan: TPanel;
- count: Integer;
begin
// Ñîçäàåì íîâûé ñïèñîê ñîõðàíÿåìûõ ïàíåëåé
PAMem := TBinMemoryWriter.Create((Length(panByGUID)+1) * 40);
// Ñîõðàíÿåì ïàíåëè
- count := Length(panByGUID);
- Mem.WriteInt(count);
+ //Mem.WriteInt(Length(panByGUID));
for pan in panByGUID do pan.SaveState(PAMem);
// Ñîõðàíÿåì ýòîò ñïèñîê ïàíåëåé
var
PAMem: TBinMemoryReader;
pan: TPanel;
- count: LongInt;
+ //count: LongInt;
begin
// Çàãðóæàåì òåêóùèé ñïèñîê ïàíåëåé
PAMem := TBinMemoryReader.Create();
PAMem.LoadFromMemory(Mem);
// Çàãðóæàåì ïàíåëè
- PAMem.ReadInt(count);
- if (count <> Length(panByGUID)) then raise EBinSizeError.Create('g_Map_LoadState: LoadPanelArray: invalid number of panels');
+ //PAMem.ReadInt(count);
+ //if (count <> Length(panByGUID)) then raise EBinSizeError.Create('g_Map_LoadState: LoadPanelArray: invalid number of panels');
+ //if (count <> Length(panByGUID)) then raise EBinSizeError.Create(Format('g_Map_LoadState: LoadPanelArray: invalid number of panels (%d : %d)', [count, Length(panByGUID)]));
for pan in panByGUID do
begin
pan.LoadState(PAMem);