Nie tylko o Tibii i OTS...
Skrypt Nie Mój!
Witam. Mam dla was do zaprezentowania skrypt, a właściwie skrzynkę questową. Quest polega na tym, że gdy pierwszy raz używamy skrzynki w wyznaczonych miejscach pojawiają się wyznaczone potwory. W skrypcie ustawiamy rogi pomieszczenia. Gdy użyjemy skrzynki drugi raz skrypt sprawdza, czy w tym pokoju, a właściwie obszarze wokół rogami jest jakiś potwór. Jeżeli jest, to wyświetla wiadomość ile potworów jeszcze musimy zabić, żeby wziąść nagrodę. Jeżeli wszystkie są wybite to dostajemy wyznaczoną przez nas nagrodę.
No więc przejdźmy do skryptu:
W data/actions/scripts robimy plik chest with kill.lua, a w nim dodajemy taki kod:
function onUse(cid, item, frompos, item2, topos) local nagroda = 2160 -- ID itemu nagrody local ile = 1 -- Tylko dla itemow, ktore sie da zbeirac. Jezeli to jest normalny item (bron, armor itp.) to wstaw 1 local monsters = {"Demon", "Demon", "Demon"} local positions = {{x=xxx, y=yyy, z=z}, {x=xxx, y=yyy, z=z}, {x=xxx, y=yyy, z=z}} local lewy_gorny = {x=xxx, y=yyy, z=z} -- Pozycja lewego gornego rogu pomieszczenia local prawy_dolny = {x=xxx, y=yyy, z=z} -- Pozycja prawego dolnego rogu pomieszczenia ile_monsterow = 0 -- Tego nie ruszac local storage = getPlayerStorageValue(cid, 1655) if (storage == -1) then for i=1, #monsters do doSummonCreature(monsters[i], positions[i]) end setPlayerStorageValue(cid,1655,1) elseif (storage == 1) then for x=lewy_gorny.x, prawy_dolny.x do for y=lewy_gorny.y, prawy_dolny.y do local monsterpos = {x=x, y=y, z=lewy_gorny.z} local monster = getThingfromPos(monsterpos) if (monster > 0) then if (isPlayer(monster) == 0) then ile_monsterow = ile_monsterow+1 end end end end if (ile_monsterow == 0) then doPlayerAddItem(cid,nagroda,ile) setPlayerStorageValue(cid,1655,2) doPlayerSendTextMessage(cid,"Pokonales juz wszystkie potwory. W nagrode dostajesz ".. ile .." nazwa itemu.") else doPlayerSendTextMessage(cid,"Musisz pokonac jeszcze ".. ile_monsterow .." potworow.") end elseif (storage == 2) then doPlayerSendTextMessage(cid,22,"To jest puste.") end end
Na górze jest konfiguracja, którą trzeba ustawić. Potwór odpowiada pozycji odpowiadającej mu. CYTAT : local monsters = {"Demon", "Demon", "Demon"}
local positions = {{x=xxx, y=yyy, z=z}, {x=xxx, y=yyy, z=z}, {x=xxx, y=yyy, z=z}}. Wtedy demon pojawi się na pozycji, która mu odpowiada. Chyba rozumiecie. W x=xxx...... Trzeba napisać pozycje gdzie się potwór ma pojawić..
Potem do actions.xml dodajemy:
<action uniqueid="tutaj uniueid skrzyni" script="chest with kill.lua" />
Uzupełniamy pole zaznaczone na czerwono. Wpisujemy w nim unique id skrzyni. Potem tylko na mapie robimy skrzynie. Ustawiamy jej taki unique id jaki daliśmy w actions.xml. Jeżeli zrobiliście wszystko tak jak opisałem tutaj będzie działać.
Pozdro,
Gelio
@edit
Dla ciekawskich: w końcu przyszedł mi jakiś pomysł na skrypta ;p Skrypt był robiony w około 20 minut. Chyba nawet mniej.
@Odemnie
Jest to skrypt z części skryptów Skopiowanych by ME
Pozdro,Scizor
Ostatnio edytowany przez Scizor (2008-11-04 21:43:48)
Offline
Faaajny skrypcik :d 10/10 !!
Offline
Skrypt fajny lecz mało przydatny i.Poco ciągle dajesz te skrypty odpuść troche :d
Offline
@Dimek
Będe dawał ile sił w Komputerze xD
Offline
Fajny skrypcik napewno mi się przyda ocena 9/10
Offline
Fajny. Daje 9,9/10
Offline
co to za quest
Offline