Graal Forums  

Go Back   Graal Forums > Development Forums > NPC Scripting
FAQ Members List Calendar Today's Posts

 
 
Thread Tools Search this Thread Display Modes
Prev Previous Post   Next Post Next
  #1  
Old 08-24-2006, 05:13 PM
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
Add and play Event System

One of the most frequent things I am asked for on playerworlds is an event system. This is a simple event system which is easy to add and use.

PHP Code:
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("-Esystem","EventSet");
      }
    }
  }
  else if (
cmd == "clear") {
    
serverr.eventname "";
    
serverr.eventlevel "";
    
serverr.eventx     "";
    
serverr.eventy     "";
    
serverr.eventmessage "";
    for (
pl allplayers) {
        
pl.triggerclient("-Esystem","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","-Esystem","setevent",player.chat.substring(10));
  }
  else if (
player.chat.starts("/message")) {
    
triggerserver("gui","-Esystem","setmessage",player.chat.substring(9));
  }
  else if (
player.chat.starts("/clear")) {
    
triggerserver("gui","-Esystem","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","-Esystem","warptoevent");

This setup requires that you name your weapon -Esystem. If you wish to use another name simply find/replace all counts of -Esystem within this script.
Reply With Quote
 


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT +2. The time now is 09:33 PM.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2026, vBulletin Solutions Inc.
Copyright (C) 1998-2019 Toonslab All Rights Reserved.