Defozo
Quara Predator Scout
![Quara Predator Scout Quara Predator Scout](http://members.chello.pl/l.lewczyk/images/monsters/q_predator.gif)
Dołączył: 15 Sty 2007
Posty: 94
Przeczytał: 0 tematów
Ostrzeżeń: 0/5 Skąd: Gdzieś :)
|
Wysłany: Pią 21:12, 19 Sty 2007 Temat postu: |
|
|
Niewiem pod jaką tibię, ale postaram ci tym pomóc:
Znalazłem to chyba na otfans.net.
Pierwszy npc daje 1 addon za 20 bat wings
Kod: | -- the id of the creature we are attacking, following, etc.
focus = 0
talk_start = 0
target = 0
following = false
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 ((string.find(msg, '(%a*)hi(%a*)')) and (focus == 0)) and getDistanceToCreature(cid) < 4 then
selfSay('Hello, ' .. creatureGetName(cid) .. '!\nMy name is Gregory, i am a studying bats.\nI need 20 bat wings to complete my studies. To help me, say "Bat"')
focus = cid
talk_start = os.clock()
end
if string.find(msg, '(%a*)hi(%a*)') and (focus ~= cid) and getDistanceToCreature(cid) < 4 then
selfSay('Please wait a second, ' .. creatureGetName(cid) .. '.')
end
if msgcontains(msg, 'offers') and focus == cid then
selfsay('I dont have anything for you.')
talk_start = os.clock()
end
if msgcontains(msg, 'crystal coins') or msgcontains(msg, 'crystal coin') and focus == cid then
selfsay('I need them to finish my studies.')
talk_start = os.clock()
end
if msgcontains(msg, 'bat') or msgcontains(msg, 'bats') and focus == cid then
talk_start = os.clock()
queststatus = getPlayerStorageValue(cid,5033)
if queststatus == -1 then
selfSay('I heard about a man in Kadrana that trades bat "wings" for icicles.\nIm too poor to travel there.\nTravel there and enter the only cave. In that cave there are 20 chests. Each of them contains 1 icicle. Go to Frail in Kadrana and trade them for 20 bat "wings".')
else
selfSay('Bats is lovely creatures, dont you think?')
end
end
if msgcontains(msg, 'reward') and focus == cid then
talk_start = os.clock()
queststatus = getPlayerStorageValue(cid,5033)
if queststatus == -1 then
selfSay('You will get a reward. I am not telling what you will get until you bring me the bat wings and 10k in crystal coins(1 Crystal Coin).')
else
selfSay('You already got rewarded.')
end
end
if msgcontains(msg, '20 wings') or msgcontains(msg, 'wings') and focus == cid then
talk_start = os.clock()
queststatus = getPlayerStorageValue(cid,5033)
if queststatus == -1 then
moneystatus = doPlayerRemoveItem(cid,2160)
itemstatus = doPlayerRemoveItem(cid,5894)
itemstatus1 = doPlayerRemoveItem(cid,5894)
itemstatus2 = doPlayerRemoveItem(cid,5894)
itemstatus3 = doPlayerRemoveItem(cid,5894)
itemstatus4 = doPlayerRemoveItem(cid,5894)
itemstatus5 = doPlayerRemoveItem(cid,5894)
itemstatus6 = doPlayerRemoveItem(cid,5894)
itemstatus7 = doPlayerRemoveItem(cid,5894)
itemstatus8 = doPlayerRemoveItem(cid,5894)
itemstatus9 = doPlayerRemoveItem(cid,5894)
itemstatus10 = doPlayerRemoveItem(cid,5894)
itemstatus11 = doPlayerRemoveItem(cid,5894)
itemstatus12 = doPlayerRemoveItem(cid,5894)
itemstatus13 = doPlayerRemoveItem(cid,5894)
itemstatus14 = doPlayerRemoveItem(cid,5894)
itemstatus15 = doPlayerRemoveItem(cid,5894)
itemstatus16 = doPlayerRemoveItem(cid,5894)
itemstatus17 = doPlayerRemoveItem(cid,5894)
itemstatus18 = doPlayerRemoveItem(cid,5894)
itemstatus19 = doPlayerRemoveItem(cid,5894)
itemstatus20 = doPlayerRemoveItem(cid,5894)
if moneystatus == -1 and itemstatus == -1 and itemstatus1 == -1 and itemstatus2 == -1 and itemstatus3 == -1 and itemstatus4 == -1 and itemstatus5 == -1 and itemstatus6 == -1 and itemstatus7 == -1 and itemstatus8 == -1 and itemstatus9 == -1 and itemstatus10 == -1 and itemstatus11 == -1 and itemstatus12 == -1 and itemstatus13 == -1 and itemstatus14 == -1 and itemstatus15 == -1 and itemstatus16 == -1 and itemstatus17 == -1 and itemstatus18 == -1 and itemstatus19 == -1 and itemstatus20 == -1 then
selfSay('The icicle guy lives in Kadrana.')
else
setPlayerStorageValue(cid,5033,1)
selfSay('Thank you! Here is your addon.')
addon(cid,1)
end
else
selfSay('I am almost done with my studies!')
end
end
if string.find(msg, '(%a*)bye(%a*)') and focus == cid and getDistanceToCreature(cid) < 4 then
selfSay('Bye, ' .. creatureGetName(cid) .. '!')
focus = 0
talk_start = 0
end
end
function onCreatureChangeOutfit(creature)
end
function onThink()
if (os.clock() - talk_start) > 30 then
if focus > 0 then
selfSay('Good bye, young traveller.')
end
focus = 0
end
if focus ~= 0 then
if getDistanceToCreature(focus) > 5 then
selfSay('Good bye then.')
focus = 0
end
end
end |
2 addon mozna dostac za 5 vamipre dusts, 1 demon dust, 4 behemoth fangs, 5 red pieces of cloths, 5 red dragon leather
Kod: | -- the id of the creature we are attacking, following, etc.
focus = 0
talk_start = 0
target = 0
following = false
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 ((string.find(msg, '(%a*)hi(%a*)')) and (focus == 0)) and getDistanceToCreature(cid) < 4 then
selfSay('Hello, ' .. creatureGetName(cid) .. '!\nMy name is Rulaha, i am a studying enchanted monsters.\nI need items like 5 vamipre dusts, 1 demon dust, 4 behemoth fangs, 5 red pieces of cloths, 5 red dragon leather to complete my studies. To help me, say "reward"')
focus = cid
talk_start = os.clock()
end
if string.find(msg, '(%a*)hi(%a*)') and (focus ~= cid) and getDistanceToCreature(cid) < 4 then
selfSay('Please wait a second, ' .. creatureGetName(cid) .. '.')
end
if msgcontains(msg, 'offers') and focus == cid then
selfsay('I dont have anything for you.')
talk_start = os.clock()
end
if msgcontains(msg, 'crystal coins') or msgcontains(msg, 'crystal coin') and focus == cid then
selfsay('I need them to finish my studies.')
talk_start = os.clock()
end
if msgcontains(msg, 'items') or msgcontains(msg, 'items') and focus == cid then
talk_start = os.clock()
queststatus = getPlayerStorageValue(cid,5033)
if queststatus == -1 then
selfSay('I heard about obsidian knife and blessed wooden stake. You can use them to get those items from dead monsters')
else
selfSay('I am so poor...')
end
end
if msgcontains(msg, 'reward') and focus == cid then
talk_start = os.clock()
queststatus = getPlayerStorageValue(cid,7003)
if queststatus == -1 then
selfSay('You will get a reward. I am not telling what you will get until you bring me the enchanted items 5 vamipre dusts, 1 demon dust, 4 behemoth fangs, 5 red pieces of cloths, 5 red dragon leather and 10k in crystal coins(1 Crystal Coin).')
else
selfSay('You already got rewarded.')
end
end
if msgcontains(msg, 'enchanted items') or msgcontains(msg, 'enchanted') and focus == cid then
talk_start = os.clock()
queststatus = getPlayerStorageValue(cid,7003)
if queststatus == -1 then
moneystatus = doPlayerRemoveItem(cid,2160)
itemstatus = doPlayerRemoveItem(cid,5905)
itemstatus1 = doPlayerRemoveItem(cid,5905)
itemstatus2 = doPlayerRemoveItem(cid,5905)
itemstatus3 = doPlayerRemoveItem(cid,5905)
itemstatus4 = doPlayerRemoveItem(cid,5905)
itemstatus5 = doPlayerRemoveItem(cid,5906)
itemstatus6 = doPlayerRemoveItem(cid,5893)
itemstatus7 = doPlayerRemoveItem(cid,5893)
itemstatus8 = doPlayerRemoveItem(cid,5893)
itemstatus9 = doPlayerRemoveItem(cid,5893)
itemstatus10 = doPlayerRemoveItem(cid,5911)
itemstatus11 = doPlayerRemoveItem(cid,5911)
itemstatus12 = doPlayerRemoveItem(cid,5911)
itemstatus13 = doPlayerRemoveItem(cid,5911)
itemstatus14 = doPlayerRemoveItem(cid,5811)
itemstatus15 = doPlayerRemoveItem(cid,5948)
itemstatus16 = doPlayerRemoveItem(cid,5948)
itemstatus17 = doPlayerRemoveItem(cid,5948)
itemstatus18 = doPlayerRemoveItem(cid,5948)
itemstatus19 = doPlayerRemoveItem(cid,5948)
itemstatus20 = doPlayerRemoveItem(cid,5948)
if moneystatus == -1 and itemstatus == -1 and itemstatus1 == -1 and itemstatus2 == -1 and itemstatus3 == -1 and itemstatus4 == -1 and itemstatus5 == -1 and itemstatus6 == -1 and itemstatus7 == -1 and itemstatus8 == -1 and itemstatus9 == -1 and itemstatus10 == -1 and itemstatus11 == -1 and itemstatus12 == -1 and itemstatus13 == -1 and itemstatus14 == -1 and itemstatus15 == -1 and itemstatus16 == -1 and itemstatus17 == -1 and itemstatus18 == -1 and itemstatus19 == -1 and itemstatus20 == -1 then
selfSay('I need 5 vamipre dusts, 1 demon dust, 4 behemoth fangs, 5 red pieces of cloths, 5 red dragon leather and one crystal coin!!.')
else
addon(cid,2)
setPlayerStorageValue(cid,7003,1)
selfSay('Thank you very much!')
end
else
selfSay('I am almost done with my studies!')
end
end
if string.find(msg, '(%a*)bye(%a*)') and focus == cid and getDistanceToCreature(cid) < 4 then
selfSay('Bye, ' .. creatureGetName(cid) .. '!')
focus = 0
talk_start = 0
end
end
function onCreatureChangeOutfit(creature)
end
function onThink()
if (os.clock() - talk_start) > 30 then
if focus > 0 then
selfSay('Good bye, young traveller.')
end
focus = 0
end
if focus ~= 0 then
if getDistanceToCreature(focus) > 5 then
selfSay('Good bye then.')
focus = 0
end
end
end |
ofc mozesz sobie zmienic itemy potrzebne do addona
Kod: | itemstatus = doPlayerRemoveItem(cid,5905) |
Ale jednemu itemowi odpowiada itemstatus dla itemstatus wynosi on
dla itemstatus1
I tak dalej, to przyda sie jeżeli chcialbyś zrobić ze za addona placisz np 1 enchanted wing i jakies tam 4 behemoth fang wtedy itemstatus robisz tylko do 4
itemstatus -enchanted wing
itemstatus1 -beh fang
itemstatus2 -beh fang
itemstatus3 -beh fang
itemstatus4 -beh fang
W tej linijce a dokladnie mozesz zmienic zeby npc dawal albo 1 albo 2 addon (ofc dla wszystkich outfitow)
1-pierwszy addon
2-drugi addon
Kod: | [COLOR="Red"]addon(cid,2)[/COLOR]
setPlayerStorageValue(cid,7003,1)
selfSay('Thank you very much!') |
A tu dam jeszcze obsidian knife i bleesed wooden stake (NIE MOJE JA ICH NIE NAPISALEM TYLKO TROCHE ZEDYTOWAŁEM)
Obsidian Knife:
Kod: | function onUse(cid, item, frompos, item2, topos)
pos = getPlayerPosition(cid)
--minosy-------
if item2.itemid == 2830 or item2.itemid == 2866 or item2.itemid == 2871 or item2.itemid == 2876 then
rand = math.random(1, 5)
if rand == 1 then
doPlayerAddItem(cid,5878,1)
doSendMagicEffect(pos, 14)
else
doSendMagicEffect(topos,2)
end
if item2.itemid == 2876 then
doTransformItem(item2.uid,2877)
elseif item2.itemid == 2866 then
doTransformItem(item2.uid,2867)
elseif item2.itemid == 2871 then
doTransformItem(item2.uid,2872)
else
doTransformItem(item2.uid,2831)
end
---zielony smok----
elseif item2.itemid == 3104 then
rand = math.random(1, 5)
if rand == 1 then
doPlayerAddItem(cid,5877,1)
doSendMagicEffect(pos, 14)
else
doSendMagicEffect(topos,2)
end
doTransformItem(item2.uid,2845)
---Hero----
elseif item2.itemid == 3128 then
rand = math.random(1, 5)
if rand == 1 then
doPlayerAddItem(cid,5911,1)
doSendMagicEffect(pos, 14)
else
doSendMagicEffect(topos,2)
end
doTransformItem(item2.uid,3130)
---Djinn Green----
elseif item2.itemid == 2989 then
rand = math.random(1, 5)
if rand == 1 then
doPlayerAddItem(cid,5910,1)
doSendMagicEffect(pos, 14)
else
doSendMagicEffect(topos,2)
end
doTransformItem(item2.uid,2990)
---Djinn BLue---
elseif item2.itemid == 3001 then
rand = math.random(1, 5)
if rand == 1 then
doPlayerAddItem(cid,5912,1)
doSendMagicEffect(pos, 14)
else
doSendMagicEffect(topos,2)
end
doTransformItem(item2.uid,3002)
----Behemothy ---
elseif item2.itemid == 2931 then
rand = math.random(1, 5)
if rand == 1 then
doPlayerAddItem(cid,5930,1)
doSendMagicEffect(pos, 14)
else
doSendMagicEffect(topos,2)
end
doTransformItem(item2.uid,2932)
----Behemothy2 ---
elseif item2.itemid == 2931 then
rand = math.random(1, 5)
if rand == 1 or rand == 2 then
doPlayerAddItem(cid,5893,1)
doSendMagicEffect(pos, 14)
else
doSendMagicEffect(topos,2)
end
doTransformItem(item2.uid,2932)
----drgon lord ---
elseif item2.itemid == 2881 then
rand = math.random(1, 5)
if rand == 1 then
doPlayerAddItem(cid,5948,1)
doSendMagicEffect(pos, 14)
else
doSendMagicEffect(topos,2)
end
doTransformItem(item2.uid,2882)
---Lizardy---
elseif item2.itemid == 4256 or item2.itemid == 4259 or item2.itemid == 4262 then
rand = math.random(1, 5)
if rand == 1 then
doPlayerAddItem(cid,5876,1)
doSendMagicEffect(pos, 14)
else
doSendMagicEffect(topos,2)
end
if item2.itemid == 4256 then
doTransformItem(item2.uid,4257)
elseif item2.itemid == 4259 then
doTransformItem(item2.uid,4260)
else
doTransformItem(item2.uid,4263)
end
---koniec---
else
return 1
end
return 1
end |
Blessedn Wooden Stake:
Kod: | function onUse(cid, item, frompos, item2, topos)
pos = getPlayerPosition(cid)
---Demon----
if item2.itemid == 2916 then
rand = math.random(1, 5)
if rand == 1 then
doPlayerAddItem(cid,5906,1)
doSendMagicEffect(pos, 14)
else
doSendMagicEffect(topos,2)
end
doTransformItem(item2.uid,2917)
---Vamp----
elseif item2.itemid == 2956 then
rand = math.random(1, 5)
if rand == 1 then
doPlayerAddItem(cid,5905,1)
doSendMagicEffect(pos, 14)
else
doSendMagicEffect(topos,2)
end
doTransformItem(item2.uid,2957)
---koniec---
else
return 1
end
return 1
end |
A mówiłeś jeszcze coś o profesjach że dla takiej profesji takie... itd. To ja już się trochę pogubiłem. ;] jednak więcej troszkę info by się przydało.
Post został pochwalony 0 razy
|
|