AdminMod.de
https://www.adminmod.de/

Mit AM 2.5.0.25 funst plugin_fun.amx net
https://www.adminmod.de/viewtopic.php?t=2575
Seite 1 von 1

Autor:  Schuft [ 16.04.2002, 20:05 ]
Betreff des Beitrags:  Mit AM 2.5.0.25 funst plugin_fun.amx net

Mit AM 2.5.0.25 funst plugin_fun.amx net!
Mit AM 2.5.0.11 geht es, woran liegt das?

Autor:  [COLA]*Whiskey [ 16.04.2002, 22:04 ]
Betreff des Beitrags: 

habe hier mal das plugin_fun2 so umgeschrieben das es für AM 2.50.26 funzt du musst es halt nur mit den include dateien von AM 2.50.26 compilieren. das normale fun plugin is meiner meinung nach sowieso als beispiel beim AM 2.50.26 mit bei.
Code:
/* A plugin for the silly */

/* $Id $ */

/* 
Last Changed: 6/4/01

Changes:
1) More colors (static colors thanks to Nikeeee[AMH1987@aol.com])
2) Glow rainbow, strobe and police ([OSU] Guardian Bob[atkinssc@mailbox.orst.edu])
3) Better management of users for glow, (doesn't rely on player index)
4) glow help list the colors
5) movezig removes the words (which blocks users screens)
6) admin_glow2 to make other users glow, without telling them.
*/

#include <core>
#include <console>
#include <string>
#include <admin>
#include <adminlib>

#define ACCESS_FUN 8192

new STRING_VERSION[MAX_DATA_LENGTH] = "2.50.0";

new iDiscoCount = 0;
new iDiscoTimer = 0;

new iLastAYB = 0;
new Index = 0;

AllYourBaseAreBelongToUs() {
  new i;
  new iMaxPlayers = maxplayercount();
  new Name[MAX_NAME_LENGTH];
  
  if (systemtime() < iLastAYB) {
    say("I think we should wait a little bit longer, don't you?");
  } else {
    for (i = 1; i <= iMaxPlayers; i++) {
      if (playerinfo(i,Name,MAX_NAME_LENGTH) == 1) {
        execclient(Name, "speak ^"all your base are be lock to us^"");
      }
    }
    iLastAYB = systemtime();
    iLastAYB += 120;
  }
}


new iGlowTimer1[64] = 0;
new iGlowTimer2[64] = 0;
new iGlowStrobe[64] = 0;
new UserLookup[64][MAX_NAME_LENGTH]={ 
"^a", "^a", "^a", "^a", "^a", "^a", "^a", "^a",
"^a", "^a", "^a", "^a", "^a", "^a", "^a", "^a",
"^a", "^a", "^a", "^a", "^a", "^a", "^a", "^a",
"^a", "^a", "^a", "^a", "^a", "^a", "^a", "^a",
"^a", "^a", "^a", "^a", "^a", "^a", "^a", "^a",
"^a", "^a", "^a", "^a", "^a", "^a", "^a", "^a",
"^a", "^a", "^a", "^a", "^a", "^a", "^a", "^a",
"^a", "^a", "^a", "^a", "^a", "^a", "^a", "^a"};

LookUP(User[]){
	new pos = -1;
	new returnVal = -1;
	new i;
	for (i = 0; i < 64; i++) {
		if(strcasestr(UserLookup[i], "^a")==1){
			if(check_user(UserLookup[i]) == 0){
				if(iGlowTimer1[i] != 0){
					kill_timer(iGlowTimer1[i]);
					iGlowTimer1[i] = 0;
				}
				if(iGlowTimer2[i] != 0){
					kill_timer(iGlowTimer2[i]);
					iGlowTimer2[i] = 0;
				}
				if(iGlowStrobe[i] != 0){
					iGlowStrobe[i] = 0;
				}
				UserLookup[i][0]='^a';
			}
		}
		if(pos == -1 && UserLookup[i][0]=='^a')
			pos = i;
		if (strmatch(User, UserLookup[i], strlen(User))==1)
			 returnVal = i;
	}
	if(returnVal == -1 && check_user(User) != 0){
		returnVal = pos;
		for(i=0;i<MAX_NAME_LENGTH;i++)
			UserLookup[pos][i]=User[i];
	}
	return returnVal;
}



GlowHelper(User[], Color[]) {
	new iGoodColor = 1;
	new Look;
	Look = LookUP(User);
	if(iGlowTimer1[Look] != 0){
		kill_timer(iGlowTimer1[Look]);
		iGlowTimer1[Look] = 0;
	}
	if(iGlowTimer2[Look] != 0){
		kill_timer(iGlowTimer2[Look]);
		iGlowTimer2[Look] = 0;
	}
	if(iGlowStrobe[Look] != 0){
		iGlowStrobe[Look] = 0;
	}

	if ( streq(Color,"red")==1) {
		glow(User,250,10,10);
	} else if ( streq(Color, "blue")==1) {
		glow(User,10,10,250);
	} else if ( streq(Color, "fuchsia")==1) {
		glow(User,255,0,255);
	} else if ( streq(Color, "skyblue")==1) {
		glow(User,0,0,255);
	} else if ( streq(Color, "lime")==1) {
		glow(User,10,10,250);
	} else if ( streq(Color, "brown")==1) {
		glow(User,139,59,19);
	} else if ( streq(Color, "aqua")==1) {
		glow(User,0,255,255);
	} else if ( streq(Color, "olive")==1) {
		glow(User,128,128,0);
	} else if ( streq(Color, "green")==1) {
		glow(User,10,250,10);
	} else if ( streq(Color, "white")==1) {
		glow(User,250,250,250);
	} else if ( streq(Color, "yellow")==1) {
		glow(User,250,250,10);
	} else if ( streq(Color, "purple")==1) {
		glow(User,250,191,36);
	} else if ( streq(Color, "darkblue")==1) {
		glow(User,24,0,76);
	} else if ( streq(Color, "teal")==1) {
		glow(User,0,255,255);
	} else if ( streq(Color, "pink")==1) {
		glow(User,255,1,115);
	} else if ( streq(Color, "orange")==1) {
		glow(User,255,148,9);
	} else if ( streq(Color, "gold")==1) {
		glow(User,248,10,250);
	} else if ( streq(Color, "fire")==1) {
		iGlowTimer2[Look] = set_timer("glowFire",1,99999,User);
	} else if ( streq(Color, "christmas")==1) {
		iGlowTimer2[Look] = set_timer("glowXmas",1,99999,User);
	} else if ( streq(Color, "police")==1) {
		iGlowTimer2[Look] = set_timer("glowPolice",1,99999,User);
	} else if ( streq(Color, "strobe")==1) {
		iGlowTimer2[Look] = set_timer("glowStrobe",1,99999,User);
	} else if ( streq(Color, "rainbow")==1) {
		iGlowTimer1[Look] = set_timer("glowRotate",2,99999,User);
	} else if ( streq(Color, "off")==1) {
		glow(User,0,0,0);
	} else {
		iGoodColor = 0;
	}
	if ( streq(Color, "help")==1) {
		messageex(User,"Glow Colors:\nred | blue | fuchsia | skyblue\nlime | aqua | olive | green\nwhite | yellow | purple | darkblue\nteal | pink | orange | gold\nrainbow | strobe | police | christmas | fire | off\nsay glow color",3);
	}
	return iGoodColor;
}

public glowRotate(Timer,Repeat,HLName,HLParam){
	new Red;
	new Green;
	new Blue;
	new User[MAX_NAME_LENGTH];

	convert_string(HLParam,User,MAX_NAME_LENGTH);
	Index = LookUP(User);
	if(check_user(User)!=0){
	
		Red = random(256);
		Green = random(256);
		Blue = random(256);
		glow(User,Red,Green,Blue);
	}
}

public glowFire(Timer,Repeat,HLName,HLParam){
	new User[MAX_NAME_LENGTH];

	convert_string(HLParam,User,MAX_NAME_LENGTH);
	Index = LookUP(User);
	if(iGlowStrobe[Index] == 0){
		iGlowStrobe[Index] = 1;
		glow(User,255,148,9);
	} else {
		iGlowStrobe[Index] = 0;
		glow(User,250,10,10);
	}
}

public glowXmas(Timer,Repeat,HLName,HLParam){
	new User[MAX_NAME_LENGTH];

	convert_string(HLParam,User,MAX_NAME_LENGTH);
	Index = LookUP(User);
	if(iGlowStrobe[Index] == 0){
		iGlowStrobe[Index] = 1;
		glow(User,10,250,10);
	} else {
		iGlowStrobe[Index] = 0;
		glow(User,250,10,10);
	}
}

public glowPolice(Timer,Repeat,HLName,HLParam){
	new User[MAX_NAME_LENGTH];

	convert_string(HLParam,User,MAX_NAME_LENGTH);
	Index = LookUP(User);
	if(iGlowStrobe[Index] == 0){
		iGlowStrobe[Index] = 1;
		glow(User,10,10,250);
	} else {
		iGlowStrobe[Index] = 0;
		glow(User,250,10,10);
	}
}

public glowStrobe(Timer,Repeat,HLName,HLParam){
	new Red;
	new Green;
	new Blue;
	new User[MAX_NAME_LENGTH];

	convert_string(HLParam,User,MAX_NAME_LENGTH);
	
	if(check_user(User)!=0){
		Index = LookUP(User);
		if(iGlowStrobe[Index] == 0){
			iGlowStrobe[Index] = 1;
			Red = random(256);
			Green = random(256);
			Blue = random(256);
		} else {
			iGlowStrobe[Index] = 0;
			Red = 0;
			Green = 0;
			Blue = 0;
		}
		glow(User,Red,Green,Blue);
	}
}


KillDisco() {
	new i;
	new iMaxPlayers = maxplayercount();
	new Name[MAX_NAME_LENGTH];
	new SessionID;
	new Team;
	new WONID;
		
	for (i = 1; i <= iMaxPlayers; i++) {
		if(playerinfo(i,Name,MAX_NAME_LENGTH,SessionID,WONID,Team)==1) {
			glow(Name,0,0,0);
		}
	}
	centersay("Disco . . . Is Dead.",10,0,255,0);
	kill_timer(iDiscoTimer);
	iDiscoCount = 0;
	iDiscoTimer = 0;
}

public DiscoInferno(Timer,Repeat,HLName,HLParam) {
	new i;
	new iDiscoMsg;
	new iMaxPlayers = maxplayercount();
	new Blue;
	new Green;
	new Name[MAX_NAME_LENGTH];
	new Red;
	new SessionID;
	new Team;
	new WONID;
	
	if(getvar("admin_fun_mode")==0) {
		KillDisco();
	} else {
		for (i = 1; i <= iMaxPlayers; i++) {
			if(playerinfo(i,Name,MAX_NAME_LENGTH,SessionID,WONID,Team)==1) {
				Red = random(256);
				Green = random(256);
				Blue = random(256);
				glow(Name,Red,Green,Blue);
			}
		}
		if (iDiscoCount == 0) {
			iDiscoMsg = random(5);
			if (iDiscoMsg == 0) {
				centersay("Uh Uh Uh Uh . . . Staying Alive!",10,Red,Green,Blue);
			} else if (iDiscoMsg == 1) {
				centersay("Disco Inferno, Baby!",10,Red,Green,Blue);
			} else if (iDiscoMsg == 2) {
				centersay("Just Talkin' 'Bout Shaft!",10,Red,Green,Blue);
			} else if (iDiscoMsg == 3) {
				centersay("So . . . What's Your Sign?",10,Red,Green,Blue);
			} else {
				centersay("Ooga Shaka!",10,Red,Green,Blue);
			}
		}
		iDiscoCount++;
		if (iDiscoCount > 20)
			iDiscoCount = 0;
	}
}

public admin_disco(HLCommand,HLData,HLUserName,UserIndex) {
	new Command[MAX_COMMAND_LENGTH];
	new Data[MAX_DATA_LENGTH];
	new User[MAX_NAME_LENGTH];
	
	convert_string(HLCommand,Command,MAX_NAME_LENGTH);
	convert_string(HLData,Data,MAX_NAME_LENGTH);
	convert_string(HLUserName,User,MAX_NAME_LENGTH);
	if (getvar("admin_fun_mode")==0) {
		selfmessage("The discotheque can only be turned on if admin_fun_mode is 1.");
	} else if (iDiscoTimer == 0) {
		iDiscoTimer = set_timer("DiscoInferno",5,99999);
		selfmessage("Let the disco begin!");
	} else {
		KillDisco();
	}
	say_command(User,Command,Data);
	return PLUGIN_HANDLED;
}

public admin_fun(HLCommand,HLData,HLUserName,UserIndex) {
	new Command[MAX_COMMAND_LENGTH];
	new Data[MAX_DATA_LENGTH];
	new User[MAX_NAME_LENGTH];
	
	convert_string(HLCommand,Command,MAX_NAME_LENGTH);
	convert_string(HLData,Data,MAX_NAME_LENGTH);
	convert_string(HLUserName,User,MAX_NAME_LENGTH);
	if(check_param(Data)==1) {
		execute_command(User,Command,"admin_fun_mode","1");
	} else {
		execute_command(User,Command,"admin_fun_mode","0");
	}
	return PLUGIN_HANDLED;
}

public admin_glow(HLCommand,HLData,HLUserName,UserIndex) {
	new Command[MAX_COMMAND_LENGTH];
	new Data[MAX_DATA_LENGTH];
	new User[MAX_NAME_LENGTH];
	
	convert_string(HLCommand,Command,MAX_NAME_LENGTH);
	convert_string(HLData,Data,MAX_NAME_LENGTH);
	convert_string(HLUserName,User,MAX_NAME_LENGTH);
	if (GlowHelper(User,Data)==1) {
		selfmessage("Success.");
	} else {
		selfmessage("Unrecognized color.");
	}
	return PLUGIN_HANDLED;
}

public admin_glow2(HLCommand,HLData,HLUserName,UserIndex) {
	new Command[MAX_COMMAND_LENGTH];
	new Data[MAX_DATA_LENGTH];
	new User[MAX_DATA_LENGTH];
	new strColor[MAX_DATA_LENGTH];
	new GlowUser[MAX_DATA_LENGTH];
	
	convert_string(HLCommand,Command,MAX_COMMAND_LENGTH);
	convert_string(HLData,Data,MAX_DATA_LENGTH);
	convert_string(HLUserName,User,MAX_DATA_LENGTH);
	strbreak(Data,GlowUser,strColor, MAX_DATA_LENGTH);
	
	if (check_user(GlowUser)==1) {
		if (GlowHelper(GlowUser,strColor)==1) {
			selfmessage("Success.");
		} else {
			selfmessage("Unrecognized color.");
		}
	} else {
		selfmessage("Unrecognized player: ");
	}
	return PLUGIN_HANDLED;
}

public HandleSay(HLCommand,HLData,HLUserName,UserIndex) {
  new i;
  new Command[MAX_COMMAND_LENGTH];
  new Data[MAX_DATA_LENGTH];
  new Length;
  new strGlow[MAX_DATA_LENGTH];
  new Text[MAX_TEXT_LENGTH];
  new User[MAX_NAME_LENGTH];

  /* Ignore the console */
  if (UserIndex < 1) 
    return PLUGIN_CONTINUE;
    	
  convert_string(HLCommand,Command,MAX_COMMAND_LENGTH);
  convert_string(HLData,Data,MAX_DATA_LENGTH);
  convert_string(HLUserName,User,MAX_NAME_LENGTH);
  if (strmatch(Data, "glow ", strlen("glow "))==1) {
    if (getvar("admin_fun_mode") == 0) {
      say("Glowing is only allowed during fun mode.");
    } else {
			/* we need to strip out 'glow ' (5 characters */
			Length = strlen(Data);
			for(i=5;i<Length+1;i++)
				strGlow[i-5] = Data[i];
			strGlow[i-5] = NULL_CHAR;
			
			if (GlowHelper(User, strGlow) == 1) {
				if (streq(strGlow,"off")==1) {
			    snprintf(Text, MAX_TEXT_LENGTH, "%s is no longer glowing.", User);
				} else if (streq(strGlow,"strobe")==1) {
			    snprintf(Text, MAX_TEXT_LENGTH, "%s begins strobing.", User);
				} else if (streq(strGlow,"rainbow")==1) {
			    snprintf(Text, MAX_TEXT_LENGTH, "%s begins changing colors.", User);
				} else if (streq(strGlow,"police")==1) {
			    snprintf(Text, MAX_TEXT_LENGTH, "%s begins glowing red and blue.", User);
				} else if (streq(strGlow,"christmas")==1) {
			    snprintf(Text, MAX_TEXT_LENGTH, "%s is a christmas tree.", User);
				} else if (streq(strGlow,"fire")==1) {
			    snprintf(Text, MAX_TEXT_LENGTH, "%s is on fire.", User);
				} else {
			  	snprintf(Text, MAX_TEXT_LENGTH, "%s begins glowing %s.", User, strGlow);
			  }
			} else if (streq(strGlow,"help")!=1){
			  snprintf(Text, MAX_TEXT_LENGTH, "Sorry, %s, but I don't recognize that 'glow' color.", User);
			}
			say(Text);
  	}
  } else if (streq(Data, "movezig") == 1) {
    AllYourBaseAreBelongToUs();
  }
  return PLUGIN_CONTINUE;
}

public plugin_init() {
	plugin_registerinfo("Fun Plugin","Does silly stuff.",STRING_VERSION);

	plugin_registercmd("admin_disco","admin_disco",ACCESS_FUN,"admin_disco: Starts disco fever. Fun mode only.");	
	plugin_registercmd("admin_fun","admin_fun",ACCESS_FUN,"admin_fun <^"on^" | ^"off^">: Turns fun mode on or off.");	
	plugin_registercmd("admin_glow","admin_glow",ACCESS_FUN,"admin_glow <color | ^"off^">: Causes you to glow that color.");
	plugin_registercmd("admin_glow2","admin_glow2",ACCESS_FUN,"admin_glow2 <player> <color | ^"off^">: Causes player to glow that color.");
	plugin_registercmd("say","HandleSay",ACCESS_ALL, "say glow <color | ^"off^">: Causes you to glow that color.  Fun mode only.");
	
	return PLUGIN_CONTINUE;
}

Autor:  Schuft [ 17.04.2002, 16:45 ]
Betreff des Beitrags: 

hey da ist cool..werds gleich mal ausprobieren

Thx Wiskey

Autor:  SN8P [ 18.04.2002, 01:01 ]
Betreff des Beitrags: 

Ich wollt mich auch bedanken! - obwohl es sich erst nach einigem editieren bei mir kompilieren liess.

DANKE!

Seite 1 von 1 Alle Zeiten sind UTC+01:00
Powered by phpBB® Forum Software © phpBB Limited
https://www.phpbb.com/