Thread: Event System
View Single Post
  #1  
Old 09-28-2006, 06:47 AM
Twinny Twinny is offline
My empire of dirt
Twinny's Avatar
Join Date: Mar 2006
Location: Australia
Posts: 2,422
Twinny is just really niceTwinny is just really nice
Send a message via AIM to Twinny
Event System

Simple Event system which can be used as a base for a much better system

PHP Code:
/*Open Sourced! Some asks for it - you give it */
function onActionServerSide(cmd) {
  
/* Set Event */
  
if (cmd == "setevent") {
    
EventList();
    
this.ec this.event.index(params[1]);
    if (
this.ec > -1) {
      
serverr.eventname this.event[this.ec];
      
serverr.eventlevel this.event[this.ec+1];
      
serverr.eventx this.event[this.ec+2];
      
serverr.eventy this.event[this.ec+2];
    }
    else {
      
player.chat "Event Not Found"/* Check below in EventList(); */
    
}
  }    
  
/* Set Message */
  
else if (cmd == "setmessage") {
    if (
serverr.eventname != NULL) {
      
serverr.eventmessage params[1];
      for (
pl allplayers) {
        
pl.triggerclient(this.name,"EventSet");
      }
    }
  }
  else if (
cmd == "clear") {
    
serverr.eventname "";
    
serverr.eventlevel "";
    
serverr.eventx     "";
    
serverr.eventy     "";
    
serverr.eventmessage "";
    for (
pl allplayers) {
        
pl.triggerclient(this.name,"Clear");
    }
  }
  else if (
cmd == "warptoevent") {
    
setlevel2(serverr.eventlevel,serverr.eventx,serverr.eventy);
  }       
}

function 
EventList() {
  
//Eventname,level,x,y
  
this.event = {
    
"Event Name","Event level",x,y,
    
"Event 2 Name","Event 2 level",x,y,
  };
}



//#CLIENTSIDE
function onActionClientSide() {
  if (
params[0] == "EventSet") {
    
setevent();
  }
  else if (
params[0] == "Clear") {
    
hideimg(201);
    
ebutton.hide();
  }
}

function 
onPlayerchats() {
if (
player.guild == "Events Team") {
  if (
player.chat.starts("/setevent")) {
    
triggerserver("gui",this.name,"setevent",player.chat.substring(10,-1));
  }
  else if (
player.chat.starts("/message")) {
    
triggerserver("gui",this.name,"setmessage",player.chat.substring(9,-1));
  }
  else if (
player.chat.starts("/clear")) {
    
triggerserver("gui",this.name,"clear");
  } }   
}

function 
onCreated(){
  new 
GuiButtonCtrl(ebutton) {
    
profile "GuiBlueButtonProfile";
    
x       screenwidth 100;
    
y       screenheight 50;
    
extent  "100 50";
    
text    "Play Event";
    
visible false;
  }  
}

function 
setevent() {
  
ebutton.show();
  
showText20110screenheight-40"Verdana""b"serverr.eventname@": " serverr.eventmessage).layer=4;
}

function 
ebutton.onAction() {
  
triggerserver("gui",this.name,"warptoevent");

Figured I'd keep the levels within the script. Could use a class or a DBNPC to contain the levels...would be much more sexier if you used a DBNPC....

Last edited by Twinny; 09-28-2006 at 02:55 PM..
Reply With Quote