Da si?, ale na dzisiaj wyczerpa?e? ju? limit. Co do debuga - mo?e doda?e? efekt/looktype, kt?ry nie istnieje.Witam, mam kolejne pytanie, co do tego mojego skryptu...
Bo ja mam ten outfit 12 no to jego mozna ustawiac kolory, i jednak chcialbym aby ten outfit byl zawsze przez te 30 minut, a zmienilaly sie tylko kolory co 30 sekund, da sie tak zrobic? (kolory losowe)
Pozdr. GarQet
#Edit
Gdy u?ywam skryptu, posta? dostaje DEBUG'a.
Nie da si? tego zrobi?, ?eby monster atakowa? tylko w danym momencie. Reszt? si? da, ale nie wiem czy ci? to zainteresuje.Rodzaj: np. actions, monsters, movements
Wersja tibii: np. 8.2
O czym ma by? skrypt.
Szczeg??y, ew. screen je?eli to ma by? skrypt z rl
Rodzaj : creaturescripts, talkactions, npc(?)
Wersja tibii : 8.0
==============
Na mapie jest npc(monster ?), kt?ry w czasie gdy gracz nie ma odpowiedniego "zadania" nie rusza si?, nie bije i nie przeszkadza. Jednak, kiedy gracz dostanie, np. od npc, to zadanie (storage) wy?wietli mu si? niebieski napis, mianowicie co ma zrobi?. Pisz?c !zadanie ten napis tak?e mu si? to wy?wietli. Misja ma polega? na tym a ?eby zabi? tego potwora(npc?). Kiedy zostanie on zabity- znika, a gracz dostaje bonusy, tj przedmioty, czy te? skille. Po ?mierci "zadaniowca" rzecz jasna wy?wietla si? nast?pny napis z misj? o zabicie nast?pnego i tak dalej.
==============
S? to opisane sagi servera Dragon Ball Legend.
M?g?by? to bardziej opisa?? Przez s?owo "Rook System" mo?na rozumie? wiele rzeczy: Oracle, teleportowanie gdy si? ma 5 lvl na mainie i wiele innych.Cze??,mamy do Ciebie pro?b? potrzebujemy skryptu :
Nazwa : Rook System.
Silnik : TFS
Wersja Tibii ; 8.40
Nie mamy gdzie sk?d wykombinowa?,wi?c do Ciebie sk?adamy t? pro?b?.
Pozdrawiam,
Arts
Jasne, ?e interesuje. Zrobi? to po prostu w ten spos?, ?e b?dzie trzeba zagada? do npc, kt?ry przeniesie mnie na arene z potworem kt?rego wcze?niej opisalem.Nie da si? tego zrobi?, ?eby monster atakowa? tylko w danym momencie. Reszt? si? da, ale nie wiem czy ci? to zainteresuje.
Gelio
Da si?, ale na dzisiaj wyczerpa?e? ju? limit. Co do debuga - mo?e doda?e? efekt/looktype, kt?ry nie istnieje.
Ok. Prosz?:Zapewne tak, bo pewnie nie ma samego looktype 12, wiec musza byc te kolory, dzis jest nowy dzien, wiec jak bedziesz mial chwile i bedzie ci sie chcialo to zrob tak, ze jest tylko looktype 12 i zmienia na losowe kolory co 30 sekund i przy zmianie zuca ten czar dystansowy.
Dzieki z g?ry, Pozd. GarQet
local efekty = {odEfektu = 1, doEfektu = 31} -- Losowe efekty i ich id
local outfit = 12 -- Tutaj dodajesz na jakie outfity mozna sie zamienic
local kolory = {odKoloru = 1, doKoloru = 120} -- Na jakie kolory moze zmienic
local coIleSekund = 30
local naIleMinut = 30
local tekst = "Gelio jest Pro!"
local ileRazy = (naIleMinut*60)/coIleSekund
function onUse(cid, item, frompos, item2, topos)
doRemoveItem(item.uid,1)
doCreatureSay(cid,tekst,TALKTYPE_ORANGE_1)
local czas = 0
local outfit = getCreatureOutfit(cid)
for i=1, ileRazy do
addEvent(zmienOutfit,czas,cid,outfit)
czas = czas + coIleSekund
end
return TRUE
end
local function randomOut()
return math.random(kolory.odKoloru,kolory.doKoloru)
end
function zmienOutfit(cid,aktualnyOutfit)
if(isPlayer(cid) == TRUE) then
local efekt = math.random(efekty.odEfektu,efekty.doEfektu)
aktualnyOutfit.lookType = outfit
aktualnyOutfit.lookHead = randomOut()
aktualnyOutfit.lookBody = randomOut()
aktualnyOutfit.lookLegs = randomOut()
aktualnyOutfit.lookFeet = randomOut()
doSetCreatureOutfit(cid,aktualnyOutfit,coIleSekund)
local position = getCreaturePosition(cid)
local i = 0
while i <= 30 do
doSendDistanceShoot(position, {x = position.x + math.random(-7, 7), y = position.y + math.random(-5, 5), z = position.z}, param)
i = i + 1
end
return TRUE
end
return FALSE
end
data/talkactions/scripts/spell.lua:Tibia: 8.0
Silnik: SQL
Spell: Teleportacja do gracza
Opis: Po wypowiedzeniu spellu 'spell "nick' teleportuje nas do gracza za 50% many, osoba do kt?rej si? teleportujemy musi mie? minimum 50% many (jak za trudne to bez tego), nie mo?e mie? pz ani by? w pz
Wymagania:
-LvL: 200
-M LvL: 120
-50% many
local procentMany = 50 -- Ile minimalnie procent many musi miec gracz uzywajacy i do kt?rego si? teleportujesz
local level = 200 -- Jaki level potrzeba
local magicLevel = 120 -- Jaki magic level potrzeba
function onSay(cid, words, param)
local gracz = getPlayerByName(param)
if(isPlayer(gracz) == TRUE) then
local mana = {gracza = getPlayerMana(gracz), cida = getPlayerMana(cid), maxGracza = getPlayerMaxMana(gracz), maxCida = getPlayerMaxMana(cid)}
local procent = {gracza = (mana.maxGracza/mana.gracza), cida = (mana.maxCida/mana.cida)}
if(procent.gracza >= procentMany) then
if(procent.cida >= procentMany) then
if(mana.maxCida/2 <= mana.cida) then
if(getPlayerLevel(cid) >= level) then
if(getPlayerMagLevel(cid) >= magicLevel) then
local posGracza = getPlayerPosition(gracz)
if(getTilePzInfo(posGracza) == FALSE and getCreatureCondition(cid,CONDITION_INFIGHT) == FALSE and getTileHouseInfo(posGracza) == FALSE) then
doPlayerAddMana(cid,-(mana.maxCida/2))
doTeleportThing(cid,posGracza)
else
doPlayerSendCancel(cid,"Cel nie moze walczyc lub byc w PZ.")
end
else
doPlayerSendCancel(cid,"Musisz miec ".. magicLevel .." magic level.")
end
else
doPlayerSendCancel(cid,"Musisz miec ".. level .." level.")
end
else
doPlayerSendCancel(cid,"Musisz miec wiecej niz ".. procentMany .." % many.")
end
else
doPlayerSendCancel(cid,"Musisz miec wiecej niz ".. procentMany .." % many.")
end
else
doPlayerSendCancel(cid,"Cel musi miec wiecej niz ".. procentMany .." % many.")
end
else
doPlayerSendCancel(cid,"Gracz jest offline lub nie istnieje.")
end
return TRUE
end
<talkaction words="spell" script="spell.lua" />
function onSay(cid, words, param)
if(param == "") then
local playerpos = getPlayerPosition(cid)
doSendAnimatedText(playerpos, "MUTED!", 193)
doPlayerSendTextMessage (cid, 22, 'You have been muted for 2 minutes. Don\'t say \'kurwa\' again !')
doSendMagicEffect(playerpos, 13)
return TRUE
end
end
M?g?by? napisa? kogo tu ma mutowa?? Gracza, kt?ry u?ywa czy tego, co jest w param? Je?eli gracza, kt?ry u?ywa to:Rodzaj: Talkactions
Wersja tibii: 8.40 (TFS 0.3.2)
Chodzi mi o dodanie do tego skryptu funkcji kt?ra zmutuje gracza na 2 minuty, widzia?em co? takiego jak doMutePlayer, jednak nie wiem jak to tu doda? ?eby nie wywala?o b??d?w...
PHP:function onSay(cid, words, param) if(param == "") then local playerpos = getPlayerPosition(cid) doSendAnimatedText(playerpos, "MUTED!", 193) doPlayerSendTextMessage (cid, 22, 'You have been muted for 2 minutes. Don\'t say \'kurwa\' again !') doSendMagicEffect(playerpos, 13) return TRUE end end
local czas = 2*60 -- Je?eli nie zadzia?a spr?buj tak: 2*60*1000
function onSay(cid, words, param)
local playerpos = getPlayerPosition(cid)
doSendAnimatedText(playerpos, "MUTED!", 193)
doPlayerSendTextMessage (cid, 22, 'You have been muted for 2 minutes. Don\'t say '.. words ..' again !') -- B?dzie dzia?a? je?eli do jednego skryptu b?dzie kilka s??w w talkactions
doSendMagicEffect(playerpos, 13)
doMutePlayer(cid, czas) -- Daje graczowi "mute"
return TRUE
end
local czas = 2*60*1000
local mute = createConditionObject(CONDITION_MUTED)
setConditionParam(mute,CONDITION_PARAM_TICKS,czas)
function onSay(cid, words, param)
local playerpos = getPlayerPosition(cid)
doSendAnimatedText(playerpos, "MUTED!", 193)
doPlayerSendTextMessage (cid, 22, 'You have been muted for 2 minutes. Don\'t say '.. words ..' again !') -- B?dzie dzia?a? je?eli do jednego skryptu b?dzie kilka s??w w talkactions
doSendMagicEffect(playerpos, 13)
doAddCondition(cid,mute) -- Daje graczowi "mute"
return TRUE
end
Nie jestem pewien czy na XML 7.92 jest creaturescripts, wi?c mo?liwe, ?e na tamtym nie zadzia?a. Prze?lij mi przyk?ad skryptu (*.lua) jakiego? NPC z twojego OTSa. Rozumiem, ?e po rozmowie z npc trzeba zabi? demona, tak?@Gelio
Dzi?ki spisa?e? si?
Teraz nast?pne 2 zlecenia:
Misje (szuka?em na all stronkach twojego tematu i nie znalaz?em odpowiedzi na zlecenia z misjami ale przeczyta?em w jakim? po?cie ?e na tego typu skrypty odpisujesz na PW wi?c pewnie dlatego)
Tibia: 7.92
Silnik: Evolution 0.7.8
Parametry: XML
Talkactions: Misje/Sagi
Opis:
Player: Hi
NPC: Witaj Shinobi, w czym moge ci pom?c?
Player: mission/saga
NPC: zabijesz Demona?
Player: Yes
NPC: Wi?c ruszaj, gdy sko?czysz wr?? po nagrod?
Potem wracamy i nagroda to exp i jaki? itemek byle jaki by tylko do wzoru
2 Zlecenie jest takie samo lecz teraz inne prametry:
Tibia: 8.0
Silnik: SQL
Z g?ry Dzi?kuj?
local focus = 0
local talk_start = 0
local target = 0
local following = false
local attacking = false
function onThingMove(creature, thing, oldpos, oldstackpos)
end
function onCreatureAppear(creature)
end
function onCreatureDisappear(cid, pos)
if focus == cid then
selfSay('Good bye then.')
focus = 0
talk_start = 0
end
end
function onCreatureTurn(creature)
end
function msgcontains(txt, str)
return (string.find(txt, str) and not string.find(txt, '(%w+)' .. str) and not string.find(txt, str .. '(%w+)'))
end
function onCreatureSay(cid, type, msg)
msg = string.lower(msg)
if (msgcontains(msg, 'hi') and (focus == 0)) and getDistanceToCreature(cid) < 4 then
selfSay('Hello ' .. creatureGetName(cid) .. '! I sell the first addon for 5k and the second addon for 10k.')
focus = cid
talk_start = os.clock()
elseif msgcontains(msg, 'hi') and (focus ~= cid) and getDistanceToCreature(cid) < 4 then
selfSay('Sorry, ' .. creatureGetName(cid) .. '! I talk to you in a minute.')
elseif focus == cid then
talk_start = os.clock()
if msgcontains(msg, 'first addon') then
selfSay('Do you want to buy the first addon for 5k?')
talk_state = 1
elseif msgcontains(msg, 'second addon') then
selfSay('Do you want to buy the second addon for 10k?')
talk_state = 2
elseif talk_state == 1 then
if msgcontains(msg, 'yes') then
if pay(cid,5000) then
addon(cid, 1)
else
selfSay('Sorry, you don\'t have enough money.')
end
end
talk_state = 0
elseif talk_state == 2 then
if msgcontains(msg, 'yes') then
if pay(cid,10000) then
addon(cid, 2)
else
selfSay('Sorry, you don\'t have enough money.')
end
end
talk_state = 0
elseif msgcontains(msg, 'bye') and getDistanceToCreature(cid) < 4 then
selfSay('Good bye, ' .. creatureGetName(cid) .. '!')
focus = 0
talk_start = 0
end
end
end
function onCreatureChangeOutfit(creature)
end
function onThink()
doNpcSetCreatureFocus(focus)
if (os.clock() - talk_start) > 30 then
if focus > 0 then
selfSay('Next Please...')
end
focus = 0
end
if focus ~= 0 then
if getDistanceToCreature(focus) > 5 then
selfSay('Good bye then.')
focus = 0
end
end
end