Code: Select all
GetX(chest)
var chet = 0x000000
GetX('chest')
Code: Select all
GetX(chest)
var chet = 0x000000
GetX('chest')
Globant wrote:по типу как в инже:
Code: Select all
GetX(chest) var chet = 0x000000 GetX('chest')
Code: Select all
program chest;
const
Chest = $0000001;
begin
AddToSystemJournal(IntToStr(GetX(Chest)));
end.
а почему бы не сделать ето в скриптеGlobant wrote:Было бы удобно. Например, забиваешь чарам во вкладку "Объекты" руну к дому. У каждого чара - своя руна.
И в скрипте прописываешь рекол домой по этому объекту. Не придется создавать копии скриптов для отдельных персонажей. Скрипт один, а значение переменной в Objects разное.
Code: Select all
Program ConfigLoaded;
var
RuneHome: Cardinal;
procedure InitSystem(CharName: String);
begin
if (CharName = 'Globant') then
RuneHome := $01010101;
if (CharName = 'Globanter') then
RuneHome := $02020202;
end;
begin
//используй тут InitSystem(GetName(Self));
//и при запуске скрипта он будет сам засовывать все, что надо в конфиг
InitSystem('Globant');
AddToSystemJournal('Rune for Globant ' + IntToStr(RuneHome));
InitSystem('Globanter');
AddToSystemJournal('Rune for Globanter ' + IntToStr(RuneHome));
end.
Я делаю по айдишнику чара.drabadan wrote:а почему бы не сделать ето в скрипте
Code: Select all
procedure InitSystem(PlayerID: Cardinal);
begin
if (PlayerID = $00000001) then
Pearl := $10000001;
Carma := $10000002;
if (PlayerID = $00000002) then
Pearl := $20000001;
Carma := $20000002;
if (PlayerID = $00000003) then
Pearl := $30000003;
Carma := $20000003;
end;
ибо там где 2 и больше строчки кода после условия или цикла - оно заключается в begin end; без етого в условие включена только 1 строка.Globant wrote:Вот типа так: Прикол в том, что скрипт запускаю на этого чара: $00000001, он подргуржается и кликает по первым переменным. Беру другого чара $00000002, он кликает правильно по первой переменной: $20000001, а по второй из своего условия Carma := $20000002; не кликает, а кликает с первого условия Carma := $10000002;Code: Select all
procedure InitSystem(PlayerID: Cardinal); begin if (PlayerID = $00000001) then begin Pearl := $10000001; Carma := $10000002; end; if (PlayerID = $00000002) then begin Pearl := $20000001; Carma := $20000002; end; if (PlayerID = $00000003) then begin Pearl := $30000003; Carma := $20000003; end; end;
Code: Select all
procedure InitSystem(PlayerID: Cardinal);
begin
if (PlayerID = $00000001) then
begin
Pearl := $10000001;
Carma := $10000002;
end;
if (PlayerID = $00000002) then
begin
Pearl := $20000001;
Carma := $20000002;
end;
if (PlayerID = $00000003) then
begin
Pearl := $30000003;
Carma := $20000003;
end;
end;
Code: Select all
if (PlayerID = $00000001) then
Pearl := $10000001;
Carma := $10000002;
if (PlayerID = $00000002) then
Pearl := $20000001;
Carma := $20000002;
if (PlayerID = $00000003) then
Pearl := $30000003;
Carma := $20000003;
Code: Select all
case PlayerID of
$00000001: begin Pearl := $10000001; Carma := $10000002; end;
$00000002: begin Pearl := $20000001; Carma := $20000002; end;
$00000003: begin Pearl := $30000003; Carma := $20000003; end;
end;