Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- use uo;
- use os;
- use polsys;
- include "include/eventid";
- include ":guildstone:resign";
- program bp_hearspeech(bp)
- var ev, mob, elem;
- if (!bp)
- return;
- endif
- var master_ser:=CInt(GetObjProperty(bp,"master_ser"));
- if (!master_ser)
- return;
- endif
- RegisterForSpeechEvents(bp,0,0);
- EnableEvents( EVID_SPEECH, 0);
- SetObjProperty(bp, "bp_pid", getpid());
- while (bp)
- if (CInt(GetObjProperty(bp, "bp_pid")) != getpid())
- return;
- endif
- if (CInt(GetObjProperty(bp, "#lastcall")) < ReadMillisecondClock())
- ev := wait_for_event(30);
- if (ev)
- elem := ev.text;
- elem := lower(elem);
- mob := ev.source;
- if (mob.serial == master_ser)
- if(elem["i resign from my guild"])
- var start := start_script( ":guildstone:bp_resign/bp_resign", mob );
- if( start.errortext )
- SysLog("Error::command_BP_Resign() - unable to start script [:guildstone:bp_resign/bp_resign] ->"+start.errortext);
- endif
- endif
- if(elem["bp_hello"])
- SendSysMessage (mob,"Hello my master!");
- endif
- if(elem["guards"])
- var start := start_script( ":guards:callguards", mob );
- if( start.errortext )
- SysLog("Error::command_CallGuards() - unable to start script [:guards:callguards] ->"+start.errortext);
- endif
- endif
- SetObjProperty(bp, "#lastcall", ReadMillisecondClock()+1500);
- endif
- endif
- clear_event_queue();
- ev:=0;
- else
- sleepms(200);
- endif
- endwhile
- endprogram
Add Comment
Please, Sign In to add comment