Graal Forums  

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

Reply
 
Thread Tools Search this Thread Display Modes
  #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
  #2  
Old 08-24-2006, 10:50 PM
Angel_Light Angel_Light is offline
Varia Developer
Angel_Light's Avatar
Join Date: Nov 2005
Location: Knoxville, TN
Posts: 1,684
Angel_Light is on a distinguished road
Send a message via AIM to Angel_Light Send a message via MSN to Angel_Light
Quote:
Originally Posted by Twinny
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.
You could of put 'name' where that is so it wont confuse simple minded scripters XD anyways nice script! :P
__________________
Deep into the Darkness peering...
Reply With Quote
Reply


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 07:53 AM.


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