- Dołączył
- Sierpień 3, 2008
- Posty
- 752
- Liczba reakcji
- 159
- Wiek
- 32
T?umaczenie ze strony Scripting Guide - NGSoft Forums
* 1. Pisanie wiadomo?ci
* 2. D?wi?ki i alarmy
* 3. Robienie ScreenShot?w
* 4. Wylogowywanie
1. Pisanie wiadomo?ci
W tym dziale nauczysz si? :
* Wypowiadania s??w przez posta?.
Skrypty jakie zrobisz :
* Leczenie zatrucia przy pomocy czaru exana pox.
* U?ywanie haste kiedy czar jest nieaktywny.
* Leczenie je?li hp spadnie poni?ej danej warto?ci.
Zaczynam poradnik tak jak ka?dy kurs programowania.... Pierwsz? rzecz? jakiej si? nauczysz b?dzie m?wienie przez posta? s??w "Hello World". Oto skrypt :
Wypr?buj ten skrypt. Twoja posta? raz powie "Hello World". Je?li chcesz aby posta? powtarza?a w k??ko dodaj "while not terminated do" przed begin. Skrypt teraz wygl?da tak :
Wypr?buj ten skrypt. Posta? b?dzie spamowa?. Je?li chcesz doda? odst?py czasowe dodaj do skryptu "sleep(2000);". Skrypt teraz wygl?da tak, a twoja posta? nie zostanie wyciszona :
Teraz wiesz co zrobi? aby posta? pisa?a, spr?bujmy napisa? troch? bardziej przydatny skrypt. Nie posta? rzuca "exana pox" kiedy jest zatruta. Zacznie tak samo jak w naszym pierwszym skrypcie zmieniaj?c "Hello World" na "exana pox":
Chcemy aby skrypt sprawdza? czy jeste?my zatruci, musimy doda? if "self.poisoned then" co oznacza je?li (if) posta? jest zatruta wtedy (then) wykona pozosta?? cz??? kodu.
Chcemy aby skrypt dzia?am nie tylko raz, tylko w k??ko, wi?c dodajemy na pocz?tku "while not terminated do".
Chcemy te? aby skrypt sprawdza?, czy mamy wymagane 30 many do u?ycia czaru. Dodajemy "if self.mana >= 30 then" co oznacza je?li (if) posta? ma ponad 30 many wtedy (then) wykona pozosta?? cz??? kodu.
Dodajemy "Sleep(100);" ?eby nie by?o lag?w. Musimy doda? jeszcze "Update the world" :
Mamy dzia?aj?cy skrypt na leczenie zatrucia.
Skrypt kt?ry napisa?e? (albo skopiowa?e?) pos?u?y nam jako wz?r do naszego nast?pnego skryptu. Oto wskaz?wki jak zmieni? nasz skrypt na nowy, kt?ry
b?dzie automatycznie rzuca? "utani hur":
Zmie? "if self.poisoned then" na "if not self.hasting then" co oznacza je?li (if) posta? nie ma haste (then) wykona pozosta?? cz??? kodu.
Zmie? ilo?? wymaganej many z 30 na 60.:
Zmie? "exana pox" na "utani hur".
Oto gotowy skrypt na automatyczne rzucanie haste.
Tym razem zrobimy co? trudniejszego a mianowicie skrypt na leczenie. U?yjemy skryptu na exan? pox jako wzoru. Tym razem u?yjemy sta?ych. Sta?e s? bardzo przydatne kiedy nie chcemy u?ywa? tej samej liczby kilkukrotnie wi?c nie musimy zmienia? wszystkich liczb tylko warto?? sta?ej.
Robimy sta?e z liczbami wymaganej many, minimalnej ilo?ci hp oraz samego czaru.
Zamie? "if self.poisoned then" na "if self.health is <= MinHealth then" co oznacza je?li (if) posta? ma tyle samo lub wi?cej hp ni? HealthNeeded wtedy (then) wykona pozosta?? cz??? kodu.
Zamie? "if self.mana" >= 30 then" na "if self.mana >= ManaNeeded" co oznacza je?li (if) posta? ma tyle samo lub wi?cej hp ni? ManaNeeded wtedy (then) wykona pozosta?? cz??? kodu.
Change ('exana pox') to (HealingSpell) Nie musisz u?ywa? ' znak?w obok HealingSpell poniwa? s? obok exury.
2. D?wi?ki i alarmy
W tym dziale nauczysz si? :
* Odtwarzanie d?wi?k?w i alarm?w.
Skrypty jakie zrobisz :
* Alarm kiedy hp spadnie poni?ej danej liczby.
* Alarm kiedy mana spadnie poni?ej danej liczby.
Wiesz ju? jak pisa? wiadomo?ci postaci?, nauczmy si? teraz jak pisa? skrypty otwarzaj?ce d?wi?ki.
Wypr?buj ten skrypt. Powiniene? ju? wiedzie?, ?e ten skrypt wykona si? tylko raz. ?eby odtwarza? ten d?wi?k w k??ko trzeba doda? "while not terminated do".
Ten skrypt b?dzie otwarza? d?wi?k do momentu w kt?rym zatrzymasz skrypt. Teraz napiszemy skrypt kt?ry zaalarmuje nas kiedy hp spadnie poni?ej 150. Cofniemy si? do naszego poprzedniego skryptu.
Dodajemy zmienn? "HpToAlert".
Chcemy ?eby skrypt sam sprawdza? nasze hp wi?c dodajemy "while not terminated do".
Musimy stworzy? warunek if/then. Musimy doda? "if self.health <= HpToAlert then". Pewnie ju? wiesz, ?e (if) masz mniej lub tyle samo hp co sta?a "HpToAlert" (then) wykona pozosta?? cz??? kodu.
Potrzebujemy "updateworld" aby uzyska? aktualne warto?ci. R?wnie? dodaj Sleep(100); na ko?cu ?eby nie robi? lag?w.
Teraz masz skrypt kt?ry alarmuje kiedy masz mniej ni? 150 hp. Je?li chcesz aby skrypt alarmowa? o stanie many wystarczy zmieni? "self.health" na "self.mana".
Napisa?e? (lub skopiowa?e?) skrypt na alarmowanie, gdy mana spadnie poni?ej 150.
3. Robienie ScreenShot?w
W tym dziale nauczysz si? :
* Robienia screenshot?w przy pomocy skryptu.
Skrypty jakie zrobisz :
* Robienie screenshota w momencie ?mierci.
Robienie SS?w jest bardzo proste. Trudniejsz? rzecz? jest wybranie miejsca do zapisania obrazu. Za nasz? lokalizacj? przyjmiemy sobie "C:\Program Files\TibiaBot NG". Zaczniemy od prostego skryptu robienia screenshota.
Musimy zmieni? Patch na "C:\Program Files\TibiaBot NG" i dodajemy "+ '\' + self.name".
Mo?esz zauwa?y? ?e je?eli u?yjesz tego ekranu to stworzy on zrzut ekranu i plik b?dzie formatu bmp i obrazek b?dzie opisany. Zaczynamy od skryptu kt?ry zrobili?my wcze?niej.
Dodaj "While not terminated do", poniewa? chcemy ca?y czas sprawdza? czy nie padli?my.
Dodajemy UpdateWorld; poniewa? potrzebujemy najnowszych danych.
Musimy stworzy? sta?? dla ilo?ci hp, tak aby ?atwo by?o j? zmieni?. Dodajemy SSHp = 0 (kiedy nie mamy hp to robi screenshota).
Kiedy mamy tyle samo lub mniej hp ni? 0 to skrypt robi screenshota. W tym celu dodajemy sprawdzanie aktualnego stanu hp if Self.Health <= SSHp then
Potrzebujemy tylko jednego screenshota wi?c dodajemy exit; po zrobieniu jednego ssa, skrypt nie b?dzie pr?bowa? robi? nast?pnego. Znowu dodajemy Sleep(100); aby nie by?o lag?w.
Const
SSHp = 0
Teraz skrypt zrobi screenshota kiedy jeste?my martwi. P?jdziemy o krok dalej i zmienimy nazw? SSa na Death, aby od razu by?o wiadomo co to za screenshot.
4. Wylogowywanie
W tym dziale nauczysz si? :
* Wylogowywania swojej postaci
Skrypty jakie zrobisz :
* Wylogowywanie kiedy mamy prawie 9 lvl
My?lisz sobie - "Jak wylogowywanie si? mo?e by? przydatne?" Jest wiele skrypt?w z wylogowywaniem i s? przydatne. Najpierw nauczymy si? je pisa?. Oto skrypt na wylogowywanie. Wypr?buj go - wyloguje ci? (nie pr?buj je?li grasz na Harmonii i jest godzina 20:00, zaufaj mi). Pewnie si? zastanawiasz co
oznacza True. True oznacza bezwarunkowe wykopanie z gry. Wi?c je?li masz battle to zadzia?a tak samo jak zrobienie exita. Je?li wpiszesz False i b?dziesz mia? battle posta? si? nie wyloguje.
To wszystko co musisz wiedzie? o skrypcie na wylogowywanie. Najtrudniejsz? rzecz? w pisaniu skrypt?w jest pomys?. Ludzie nie chc? wbija? 9 lvli na rooku (postaciami kt?re wychodz? na maina). Napiszemy skrypt kt?ry wyloguje nas kiedy mamy prawie 9 lvl. Zaczniemy z naszym skryptem, kt?ry napisali?my na pocz?tku. Wpisujemy True na wypadek gdyby potwory nas atakowa?y.
Chcemy aby bot ca?y czas sprawdza? czy mamy odpowiedni? ilo?? expa wi?c jak zwykle dodajemy "while not terminated do ".
Dodajemy UpdateWorld; poniewa? potrzebujemy najnowszych danych.
Dodajemy sta?? z liczb? expa przy kt?rej mamy si? wylogowa?. (Exp na 9 lvl to 6400)
Teraz dodaj if Self.Experience >= ExpToLog then. Wiesz ju? dok?adnie o co chodzi (je?li nie to zacznij czyta? poradnik od pocz?tku). Jak zwykle dodajemy Sleep(1000); aby nie by?o lag?w.
Oto nasz skrypt do wylogowywania kiedy nasza posta? ma 6250 expa!
* 1. Pisanie wiadomo?ci
* 2. D?wi?ki i alarmy
* 3. Robienie ScreenShot?w
* 4. Wylogowywanie
1. Pisanie wiadomo?ci
W tym dziale nauczysz si? :
* Wypowiadania s??w przez posta?.
Skrypty jakie zrobisz :
* Leczenie zatrucia przy pomocy czaru exana pox.
* U?ywanie haste kiedy czar jest nieaktywny.
* Leczenie je?li hp spadnie poni?ej danej warto?ci.
Zaczynam poradnik tak jak ka?dy kurs programowania.... Pierwsz? rzecz? jakiej si? nauczysz b?dzie m?wienie przez posta? s??w "Hello World". Oto skrypt :
PHP:
begin
self.say('Hello world');
end;
PHP:
while not terminated do
begin
self.say('Hello World');
end;
PHP:
while not terminated do
begin
self.say('Hello World');
sleep(2000);
end;
PHP:
begin
self.say('exana pox');
end;
PHP:
begin
if self.poisoned then
self.say('exana pox');
end;
PHP:
while not terminated do
begin
if self.poisoned then
self.say('exana pox');
end;
PHP:
while not terminated do
begin
if self.poisoned then
if self.mana >= 30 then
self.say('exana pox');
end;
PHP:
while not terminated do
begin
UpdateWorld;
if self.poisoned then
if self.mana >= 30 then
self.say('exana pox');
Sleep(100);
end;
Skrypt kt?ry napisa?e? (albo skopiowa?e?) pos?u?y nam jako wz?r do naszego nast?pnego skryptu. Oto wskaz?wki jak zmieni? nasz skrypt na nowy, kt?ry
b?dzie automatycznie rzuca? "utani hur":
PHP:
while not terminated do
begin
UpdateWorld;
if self.poisoned then
if self.mana >= 30 then
self.say('exana pox');
Sleep(100);
end;
PHP:
while not terminated do
begin
UpdateWorld;
if not self.hasting then
if self.mana >= 30 then
self.say('exana pox');
Sleep(100);
end;
PHP:
while not terminated do
begin
UpdateWorld;
if not self.hasting then
if self.mana >= 60 then
self.say('exana pox');
Sleep(100);
end;
PHP:
while not terminated do
begin
UpdateWorld;
if not self.hasting then
if self.mana >= 60 then
self.say('utani hur');
Sleep(100);
end;
Tym razem zrobimy co? trudniejszego a mianowicie skrypt na leczenie. U?yjemy skryptu na exan? pox jako wzoru. Tym razem u?yjemy sta?ych. Sta?e s? bardzo przydatne kiedy nie chcemy u?ywa? tej samej liczby kilkukrotnie wi?c nie musimy zmienia? wszystkich liczb tylko warto?? sta?ej.
PHP:
while not terminated do
begin
UpdateWorld;
if self.poisoned then
if self.mana >= 30 then
self.say('exana pox');
Sleep(100);
end;
PHP:
Const
MinHealth = 300
ManaNeeded = 20
HealingSpell = 'exura'
while not terminated do
begin
UpdateWorld;
if self.poisoned then
if self.mana >= 30 then
self.say('exana pox');
Sleep(100);
end;
PHP:
Const
MinHealth = 300
ManaNeeded = 20
HealingSpell = 'exura'
while not terminated do
begin
UpdateWorld;
if self.health <= MinHealth then
if self.mana >= 30 then
self.say('exana pox');
Sleep(100);
end;
PHP:
Const
MinHealth = 300
ManaNeeded = 20
HealingSpell = 'exura'
while not terminated do
begin
UpdateWorld;
if self.health <= MinHealth then
if self.mana >= ManaNeeded then
self.say('exana pox');
Sleep(100);
end;
PHP:
Const
MinHealth = 300
ManaNeeded = 20
HealingSpell = 'exura'
while not terminated do
begin
UpdateWorld;
if self.health <= MinHealth then
if self.mana >= ManaNeeded then
self.say(HealingSpell);
Sleep(100);
end;
2. D?wi?ki i alarmy
W tym dziale nauczysz si? :
* Odtwarzanie d?wi?k?w i alarm?w.
Skrypty jakie zrobisz :
* Alarm kiedy hp spadnie poni?ej danej liczby.
* Alarm kiedy mana spadnie poni?ej danej liczby.
Wiesz ju? jak pisa? wiadomo?ci postaci?, nauczmy si? teraz jak pisa? skrypty otwarzaj?ce d?wi?ki.
PHP:
begin
PlaySound('C:\Windows\Media\notify.wav');
end;
PHP:
while not terminated do
begin
PlaySound('C:\Windows\Media\notify.wav');
end;
PHP:
begin
PlaySound('C:\Windows\Media\notify.wav');
end;
PHP:
Const
HpToAlert = 150
begin
PlaySound('C:\Windows\Media\notify.wav');
end;
PHP:
Const
HpToAlert = 150
while not terminated do
begin
PlaySound('C:\Windows\Media\notify.wav');
end;
PHP:
Const
HpToAlert = 150
while not terminated do
begin
if self.health <= HpToAlert then
PlaySound('C:\Windows\Media\notify.wav');
end;
PHP:
Const
HpToAlert = 150
while not terminated do
begin
UpdateWorld;
if self.health <= HpToAlert then
PlaySound('C:\Windows\Media\notify.wav');
Sleep(100);
end;
PHP:
Const
HpToAlert = 150
while not terminated do
begin
UpdateWorld;
if self.mana <= HpToAlert then
PlaySound('C:\Windows\Media\notify.wav');
Sleep(100);
end;
3. Robienie ScreenShot?w
W tym dziale nauczysz si? :
* Robienia screenshot?w przy pomocy skryptu.
Skrypty jakie zrobisz :
* Robienie screenshota w momencie ?mierci.
Robienie SS?w jest bardzo proste. Trudniejsz? rzecz? jest wybranie miejsca do zapisania obrazu. Za nasz? lokalizacj? przyjmiemy sobie "C:\Program Files\TibiaBot NG". Zaczniemy od prostego skryptu robienia screenshota.
PHP:
begin
ScreenShot(Path);
end;
PHP:
begin
ScreenShot('C:\Program Files\TibiaBot NG' + '\' + self.name + '.bmp);
end;
PHP:
begin
ScreenShot('C:\Program Files\TibiaBot NG' + '\' + self.name + '.bmp);
end;
PHP:
While not terminated do
begin
ScreenShot('C:\Program Files\TibiaBot NG' + '\' + self.name + '.bmp);
end;
PHP:
While not terminated do
begin
UpdateWorld;
ScreenShot('C:\Program Files\TibiaBot NG' + '\' + self.name + '.bmp);
end;
PHP:
Const
SSHp = 0
While not terminated do
begin
UpdateWorld;
ScreenShot('C:\Program Files\TibiaBot NG' + '\' + self.name + '.bmp);
end;
PHP:
Const
SSHp = 0
While not terminated do
begin
UpdateWorld;
if Self.Health <= SSHp then
ScreenShot('C:\Program Files\TibiaBot NG' + '\' + self.name + '.bmp);
end;
Const
SSHp = 0
PHP:
While not terminated do
begin
UpdateWorld;
if Self.Health <= SSHp then
begin
ScreenShot('C:\Program Files\TibiaBot NG' + '\' + self.name + '.bmp);
exit;
end;
Sleep(100);
end;
PHP:
Const
SSHp = 0
While not terminated do
begin
UpdateWorld;
if Self.Health <= SSHp then
begin
ScreenShot('C:\Program Files\TibiaBot NG' + '\' + self.name + ' Death' + '.bmp);
exit;
end;
Sleep(100);
end;
W tym dziale nauczysz si? :
* Wylogowywania swojej postaci
Skrypty jakie zrobisz :
* Wylogowywanie kiedy mamy prawie 9 lvl
My?lisz sobie - "Jak wylogowywanie si? mo?e by? przydatne?" Jest wiele skrypt?w z wylogowywaniem i s? przydatne. Najpierw nauczymy si? je pisa?. Oto skrypt na wylogowywanie. Wypr?buj go - wyloguje ci? (nie pr?buj je?li grasz na Harmonii i jest godzina 20:00, zaufaj mi). Pewnie si? zastanawiasz co
oznacza True. True oznacza bezwarunkowe wykopanie z gry. Wi?c je?li masz battle to zadzia?a tak samo jak zrobienie exita. Je?li wpiszesz False i b?dziesz mia? battle posta? si? nie wyloguje.
PHP:
begin
Self.Logout(True);
end;
PHP:
begin
Self.Logout(True);
end;
PHP:
while not terminated do
begin
Self.Logout(True);
end;
PHP:
while not terminated do
begin
UpdateWorld;
Self.Logout(True);
end;
PHP:
Const
ExpToLog = 6250
while not terminated do
begin
UpdateWorld;
Self.Logout(True);
end;
PHP:
Const
ExpToLog = 6250
while not terminated do
begin
UpdateWorld;
if Self.Experience >= ExpToLog then
Self.Logout(True);
Sleep(1000);
end;
Teraz nie b?d? musia? wchodzi? na google, tylko samemu wklepie w konsoli 

