Page 1 of 1

как обращаться к объектам во вкладке Objects стелса?

Posted: 05.01.2016 6:20
by Globant
по типу как в инже:

Code: Select all

GetX(chest)
var chet = 0x000000
GetX('chest')

Re: как обращаться к объектам во вкладке Objects стелса?

Posted: 05.01.2016 15:43
by Vizit0r
никак. скрипт один, вкладок может быть много, объекты в них могут пересекаться, и прочее.

использовать объекты из кладки Objects можно либо в командах (что набираются в клиенте), либо их вызовах через хоткеи.

P.S. Чисто теоретически можно прицепить их использование в скриптах, вызываемых из этого окна. Потом может сделаю, если не забулд.

Re: как обращаться к объектам во вкладке Objects стелса?

Posted: 05.01.2016 17:00
by drabadan
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.

Re: как обращаться к объектам во вкладке Objects стелса?

Posted: 07.01.2016 3:45
by Globant
Было бы удобно. Например, забиваешь чарам во вкладку "Объекты" руну к дому. У каждого чара - своя руна.
И в скрипте прописываешь рекол домой по этому объекту. Не придется создавать копии скриптов для отдельных персонажей. Скрипт один, а значение переменной в Objects разное.

Re: как обращаться к объектам во вкладке Objects стелса?

Posted: 07.01.2016 11:26
by drabadan
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.

Re: как обращаться к объектам во вкладке Objects стелса?

Posted: 07.01.2016 13:13
by Macks
drabadan wrote:а почему бы не сделать ето в скрипте
Я делаю по айдишнику чара.

Re: как обращаться к объектам во вкладке Objects стелса?

Posted: 09.01.2016 5:15
by Globant

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;
Вот типа так: Прикол в том, что скрипт запускаю на этого чара: $00000001, он подргуржается и кликает по первым переменным. Беру другого чара $00000002, он кликает правильно по первой переменной: $20000001, а по второй из своего условия Carma := $20000002; не кликает, а кликает с первого условия Carma := $10000002;

Re: как обращаться к объектам во вкладке Objects стелса?

Posted: 09.01.2016 10:24
by drabadan
Globant wrote:

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;
Вот типа так: Прикол в том, что скрипт запускаю на этого чара: $00000001, он подргуржается и кликает по первым переменным. Беру другого чара $00000002, он кликает правильно по первой переменной: $20000001, а по второй из своего условия Carma := $20000002; не кликает, а кликает с первого условия Carma := $10000002;
ибо там где 2 и больше строчки кода после условия или цикла - оно заключается в begin end; без етого в условие включена только 1 строка.

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;

Re: как обращаться к объектам во вкладке Objects стелса?

Posted: 09.01.2016 11:37
by Vizit0r

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;