This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
lua:vodurtodo:vodur_s_todo [2015/01/01 00:50] vodur |
— (current) | ||
---|---|---|---|
Line 1: | Line 1: | ||
- | oprog recite trigger | ||
- | make sure all vnum args accept rvnums | ||
- | |||
- | reapply affects after setlevel | ||
- | |||
- | ROOM PROGS | ||
- | |||
- | -fight trigger | ||
- | |||
- | -recall trigger | ||
- | |||
- | -void trigger | ||
- | |||
- | -spell trigger | ||
- | |||
- | -social trigger | ||
- | |||
- | -try trigger | ||
- | |||
- | {-scriptdump-} and maybe scriptedit commands | ||
- | |||
- | way to manually clear env? _G={} is pretty easy though | ||
- | |||
- | maybe: lua_load_xprog to search for chunkname, so we don't reload the script necessarily each time but just grab a new function instance by running the chunk. | ||
- | |||
- | add rprog to grep | ||
- | |||
- | add optional spell level arg to cast() | ||
- | |||
- | set position | ||
- | |||
- | add timer to setval | ||
- | |||
- | wiznet option to see only bugs in your area | ||
- | |||
- | luaquery option to dump csv to webserver | ||
- | |||
- | mprogs have return value | ||
- | |||
- | fix boolean checks (ispc()) to be props instead of methods | ||
- | |||
- | fix more appropriate CH methods to be globals | ||
- | |||
- | <code lua> | ||
- | -- Kain GRALL code for sack of rice | ||
- | say("Keep counting kid... We'll work some of that fight out of you.") | ||
- | emote("puts some bricks on Cloud's back, JUST to make sure he gets a work out.") | ||
- | -- Kain greet code to start quest | ||
- | local ricevnum=7326 | ||
- | local qvnum=14800 | ||
- | -- Don't give quest if timer is still running | ||
- | if ch:qtimer(qvnum)>0 then | ||
- | say("You should give someone else a turn. Come back in %d hours", ch:qtimer(qvnum)) | ||
- | return | ||
- | end | ||
- | -- Don't talk them if already gave something | ||
- | tracker=tracker or {} | ||
- | if tracker[ch.name] then return end | ||
- | |||
- | say("Hey %s! I need some more weights for cloud. Can you bring me a '%s'?", | ||
- | ch.name, | ||
- | getobjproto(ricevnum).shortdescr) | ||
- | -- End Kain greet code | ||
- | </code> | ||
- | <code lua> | ||
- | -- Kain give code | ||
- | local ricevnum=7326 | ||
- | local qvnum=14800 | ||
- | |||
- | -- Does he want it? | ||
- | if not(obj1.vnum==ricevnum) then | ||
- | say("I don't want this.") | ||
- | mdo("give '%s' %s", obj1.name, ch.name) | ||
- | mdo("drop %s", obj1.name) | ||
- | return | ||
- | end | ||
- | |||
- | -- check if their timer is still running | ||
- | if ch:qtimer(qvnum)>0 then | ||
- | say("You should give someone else a turn. Come back in %d hours", ch:qtimer(qvnum)) | ||
- | mdo("give '%s' %s", obj1.name, ch.name) | ||
- | mdo("drop %s", obj1.name) | ||
- | return | ||
- | end | ||
- | |||
- | -- check if already gave that one | ||
- | tracker=tracker or {} | ||
- | if tracker[ch.name] and tracker[ch.name][obj1.vnum] then | ||
- | say("You already gave me that!") | ||
- | mdo("give '%s' %s", obj1.name, ch.name) | ||
- | mdo("drop %s", obj1.name) | ||
- | return | ||
- | end | ||
- | |||
- | -- He really wants it! | ||
- | if tracker[ch.name]==nil then | ||
- | tracker[ch.name]={} | ||
- | end | ||
- | tracker[ch.name][obj1.vnum]=true | ||
- | say("Thanks %s!", ch.name) | ||
- | |||
- | -- Now see if finished | ||
- | if tracker[ch.name][ricevnum] then -- Has the rice | ||
- | qset(ch, qvnum, 1, 23) | ||
- | say("Haha! Cloud will be strong in no time with this kind of weight!") | ||
- | mdo("mob junk '%s'", obj1.name) | ||
- | reward(ch, "qp", 15) | ||
- | tracker[ch.name]=nil | ||
- | else | ||
- | say("I still need a %s", getobjproto( (not(tracker[ch.name][ricevnum]))).shortdescr) | ||
- | end | ||
- | |||
- | -- End Kain give code | ||
- | |||
- | </code> |