AlliedModders

AlliedModders (https://forums.alliedmods.net/index.php)
-   Trash (https://forums.alliedmods.net/forumdisplay.php?f=22)
-   -   Server Rules , /ShowRules , By , Saam5 (https://forums.alliedmods.net/showthread.php?t=50095)

Saam5 01-19-2007 12:53

Server Rules , /ShowRules , By , Saam5
 
2 Attachment(s)
Hello.
This is my first plugin :) and i will see what you like about it :wink:

Server Rules , /showrules
Works For CS , CZ.

Installing The Plugin.
1. Download The Plugins , ''showrules.amxx'' and ''showrules.sma''

2. Copy the ''showrules.amxx'' to your cs/cstrike/addons/amxmodx/plugins/
''showrules.amxx'' will be in the plugins dir.

3. Copy the ''showrules.sma'' to your cs/cstrike/addons/amxmodx/scripting/
''showrules.sma will be in the scripting dir.

4. Create ''rules.txt in your cs/cstrike ''rules.txt will be listed in the
Cstrike Dir .

5. Open the ''rules.txt'' and add your own server rules in there and
save and Close it.

6. Add ''showrules.amxx'' in your cs/cstrike/addons/amxmodx/configs/plugins.ini ''showrules.amxx will be
writed in plugins.ini

7. Open ''Cvars.ini'' in your cs/cstrike/addons/amxmodx/configs/cvars.ini
and add those :

rules_interval - interval between automatic rules display
rules_admin_only - disables say /showrules command from regular users
rules_join - if set 1 then players will see the rules automaticly when joining
rules_hudmessage_time - time how long hudmessage is displayed
rules_join_timeout - delay to show rules when joining to the server


Commands :
1.Players And Admins Will See The Rules When Writing : /showrules
in Chat !!
2. For (ADMINS) Write ''showrules_enable'' in console to enable/disable the plugin

showrules_enable 1 , to enable the plugin. showrules_enable 0 to disable the plugin

(ADMINS) - write in console ''rules_show'' to display the rules to players.

Restart Your Server And Enyoy! :)
Got Error/Problem , Contact me . [email protected]
Did i miss something ??:o then contact me too
Thanks !!





Silver Dragon 01-19-2007 12:58

Re: Server Rules , /ShowRules , By , Saam5
 
Whats the difference between this, and public server rules plugin by Priski?

Everything is the exact copy of his .sma.

Xtreme-Coder 01-19-2007 13:16

Re: Server Rules , /ShowRules , By , Saam5
 
Hmmm....

Your Plugin:
Code:


 
/*
SHOW RULES 1.2 ( 2007-01-18 )
Plugin by Saam5.
Usage :
Put your own rules in rules.txt file in ''cstrike'' folder
Commands :
rules_show  - shows rules listed in rules.txt
showrules_enable - set this to 0 to disable automatic rules display
say /showrules  - displays rules to normal user
CVARS :
rules_interval  - interval between automatic rules display
rules_admin_only - disables say /showrules command from regular users
rules_join  - if set 1 displays rules after player have joined server
rules_hudmessage_time - time how long hudmessage is displayed
rules_join_timeout - delay to show rules when joining to the server
*/
#include <amxmodx>
#include <amxmisc>
new base[] = "rules.txt"
new i, num, text[127], hudmsg[440] //max hudmessage length was 439 chars (?)
public plugin_init()
{
 
 register_plugin("AMXX Show Rules", "1.2", "The X Team")
 
 // register command
 
 register_concmd("rules_show", "rules", ADMIN_KICK, "- show rules to everybody")
 register_concmd("showrules_enable", "r_enable", ADMIN_KICK, "- <1|0> set automessagin on/off")
 register_cvar("rules_admin_only", "0")
 register_cvar("rules_join", "1")
 register_cvar("rules_join_timeout", "5")
 register_cvar("rules_hudmessage_time", "10")
 register_cvar("rules_interval", "600")
 register_clcmd("say /showrules", "clientrules", ADMIN_ALL, "- show rules")
}
public plugin_cfg() {
 
 if (!file_exists(base)) {
  write_file(base, "; This is the public rules file, put your rules below")
  write_file(base, "; Remember, max amount of characters is 439")
  console_print(0, "%s file not found. creating new ...", base)
 }
 
}
public client_authorized ( id ) {
 // on join display rules
 
 if (get_cvar_num("rules_join")) {
  new tmp[1]
  tmp[0] = id
  set_task(1.0, "showrules",id,tmp,1)
  console_print(0, "[user %d] client auth!", tmp[0])
 }
 
 return PLUGIN_HANDLED
}
 
public showrules (pid[]) {
 new id = pid[0]
 
 if ( get_user_team(id) != 1 && get_user_team(id) != 2 ) {
  if (id) {
  new tmp[1]
  tmp[0] = id
  set_task(2.0, "showrules",id,tmp,1)  // not yet in server
  console_print(0, "[user %d] wait for joining team ...", id)
  }
  return PLUGIN_HANDLED
 }
 
 new tmp[1]
 tmp[0] = id
 
 console_print(0, "[user %d] joined team : %d", id, get_user_team(id))
 console_print(0, "[user %d] printing rules after %d seconds", id, get_cvar_num("rules_join_timeout"))
 
 set_task(get_cvar_float("rules_join_timeout"), "printrules", id, tmp, 1)  // not yet in server
 
 return PLUGIN_HANDLED
}
public printrules(pid[])
{
 new id = pid[0]
 if (file_exists(base))
  {
 
  console_print(0, "[user] printing rules for user %d", id)
 
  set_hudmessage ( 200, 150, 0, 0.02, 0.25, 2, 0.1, get_cvar_float("rules_hudmessage_time"), 0.05, 1.0, 1)
  format(hudmsg, 439, "")
 
  // read all the rules
  for(i=0; read_file(base, i, text, 127, num); i++) {
  if (num > 0 && text[0] != ';') {
    // display with predefined delay
    add(hudmsg,439,text)
    add(hudmsg,439,"^n")
  }
  }
 
  // show hudmessages
  show_hudmessage(id, hudmsg)
 
 }
 
 return PLUGIN_HANDLED
}
 
public r_enable(id, level, cid)
{
 if (!cmd_access(id, level, cid, 0)) {  // NOT ADMIN
  return PLUGIN_HANDLED
 }
 
 new arg[3]
 
 read_argv(1, arg, 2)
 new value = str_to_num(arg)
 
 if (!isalnum(arg[0]))
  value = -1
 
 if (value == 0) {
 
  if (task_exists(2)) // close task
  remove_task(2)
 
  console_print(id, "You have disabled automatic messages")
  return PLUGIN_HANDLED
 
 }
 if (value == 1) {
  // activate task, reload if already exist
  if (task_exists(2)) {
  change_task(2, get_cvar_float("rules_interval"))
  } else {
  set_task(get_cvar_float("rules_interval"), "rules", 2, "", 0, "b")
  }
  console_print(id, "You have enabled automatic messages")
  return PLUGIN_HANDLED 
 }
 if (task_exists(2)) {
  console_print(id, "automessages is ON.")
  } else {
  console_print(id, "automessages is OFF.")
 }
 console_print(id, "showrules_enable <1|0> (1 = ON, 0 = OFF)")
 return PLUGIN_HANDLED 
 
}
public clientrules(id, level, cid) {
 new pID[1]
 pID[0] = id
 
 console_print(0,"[user %d]Print rules for me only",pID[0])
 printrules(pID[0])
}
public rules(id, level, cid)
{
 new pID[1]
 pID[0] = id
 
 if (!cmd_access(id, level, cid, 0)) {  // NOT ADMIN
  return PLUGIN_HANDLED
 }
 
 // read file to all users
 pID[0] = 0
 console_print(0,"[user %d]Print rules for all",id)
 printrules(pID[0])
 
 // Reset scheduled task after display
 if (get_cvar_float("rules_interval") > 0) {
  if (task_exists(2)) {
  change_task(2, get_cvar_float("rules_interval"))
  } else {
  set_task(get_cvar_float("rules_interval"), "rules", 200, "", 0, "b")
  }
 }
 
 return PLUGIN_HANDLED
}

Plugin By Priski:
Code:


/*
PUBLIC SERVER RULES 1.20 ( 2005-08-18 )
Plugin by Priski
Usage :
Put rules in rules.txt file in cstrike folder
and set rules_speed and rules_interval whatever you like
Commands :
rules_show  - shows rules listed in rules.txt
rules_enable  - set this to 0 to disable automatic rules display
say /rules  - displays rules to normal user
CVARS :
rules_interval  - interval between automatic rules display
rules_admin_only - disables say /rules command from regular users
rules_join  - if set 1 displays rules after player have joined server
rules_hudmessage_time - time how long hudmessage is displayed
rules_join_timeout - delay to show rules when joining to the server
Changelog :
1.20 / 2005-08-18
- removed client chat rules
- fixed major bugs
1.11 / 2005-08-15
- fixed some bugs
1.10 / 2005-08-14
- new CVARs : rules_hudmessage, rules_hudmessage_time
rules_join_timeout
- Rules in hudmessage mode also
1.03 / 2005-08-12
- rules_enable command fix.
- new CVAR "rules_join" set 1 to show rules
to players when they join server
1.02 / 2005-08-11
- optimized code
- rules_enable is now a command
- default interval is now 10 minutes
1.01 / 2005-08-11
- added rules_admin_only & say /rules command
- variables are global now
1.0 / 2005-08-11
- first release
*/
#include <amxmodx>
#include <amxmisc>
new base[] = "rules.txt"
new i, num, text[127], hudmsg[440] //max hudmessage length was 439 chars (?)
public plugin_init()
{
 
 register_plugin("AMXX Public server rules", "1.20", "Priski")
 
 // register command
 
 register_concmd("rules_show", "rules", ADMIN_KICK, "- show rules to everybody")
 register_concmd("rules_enable", "r_enable", ADMIN_KICK, "- <1|0> set automessagin on/off")
 register_cvar("rules_admin_only", "0")
 register_cvar("rules_join", "1")
 register_cvar("rules_join_timeout", "5")
 register_cvar("rules_hudmessage_time", "10")
 register_cvar("rules_interval", "600")
 register_clcmd("say /rules", "clientrules", ADMIN_ALL, "- show rules")
}
public plugin_cfg() {
 
 if (!file_exists(base)) {
  write_file(base, "; This is the public rules file, put your rules below")
  write_file(base, "; Remember, max amount of characters is 439")
  console_print(0, "%s file not found. creating new ...", base)
 }
 
}
public client_authorized ( id ) {
 // on join display rules
 
 if (get_cvar_num("rules_join")) {
  new tmp[1]
  tmp[0] = id
  set_task(1.0, "showrules",id,tmp,1)
  console_print(0, "[user %d] client auth!", tmp[0])
 }
 
 return PLUGIN_HANDLED
}
 
public showrules (pid[]) {
 new id = pid[0]
 
 if ( get_user_team(id) != 1 && get_user_team(id) != 2 ) {
  if (id) {
  new tmp[1]
  tmp[0] = id
  set_task(2.0, "showrules",id,tmp,1)  // not yet in server
  console_print(0, "[user %d] wait for joining team ...", id)
  }
  return PLUGIN_HANDLED
 }
 
 new tmp[1]
 tmp[0] = id
 
 console_print(0, "[user %d] joined team : %d", id, get_user_team(id))
 console_print(0, "[user %d] printing rules after %d seconds", id, get_cvar_num("rules_join_timeout"))
 
 set_task(get_cvar_float("rules_join_timeout"), "printrules", id, tmp, 1)  // not yet in server
 
 return PLUGIN_HANDLED
}
public printrules(pid[])
{
 new id = pid[0]
 if (file_exists(base))
  {
 
  console_print(0, "[user] printing rules for user %d", id)
 
  set_hudmessage ( 200, 150, 0, 0.02, 0.25, 2, 0.1, get_cvar_float("rules_hudmessage_time"), 0.05, 1.0, 1)
  format(hudmsg, 439, "")
 
  // read all the rules
  for(i=0; read_file(base, i, text, 127, num); i++) {
  if (num > 0 && text[0] != ';') {
    // display with predefined delay
    add(hudmsg,439,text)
    add(hudmsg,439,"^n")
  }
  }
 
  // show hudmessages
  show_hudmessage(id, hudmsg)
 
 }
 
 return PLUGIN_HANDLED
}
 
public r_enable(id, level, cid)
{
 if (!cmd_access(id, level, cid, 0)) {  // NOT ADMIN
  return PLUGIN_HANDLED
 }
 
 new arg[3]
 
 read_argv(1, arg, 2)
 new value = str_to_num(arg)
 
 if (!isalnum(arg[0]))
  value = -1
 
 if (value == 0) {
 
  if (task_exists(2)) // close task
  remove_task(2)
 
  console_print(id, "You have disabled automatic messages")
  return PLUGIN_HANDLED
 
 }
 if (value == 1) {
  // activate task, reload if already exist
  if (task_exists(2)) {
  change_task(2, get_cvar_float("rules_interval"))
  } else {
  set_task(get_cvar_float("rules_interval"), "rules", 2, "", 0, "b")
  }
  console_print(id, "You have enabled automatic messages")
  return PLUGIN_HANDLED 
 }
 if (task_exists(2)) {
  console_print(id, "automessages is ON.")
  } else {
  console_print(id, "automessages is OFF.")
 }
 console_print(id, "rules_enable <1|0> (1 = ON, 0 = OFF)")
 return PLUGIN_HANDLED 
 
}
public clientrules(id, level, cid) {
 new pID[1]
 pID[0] = id
 
 console_print(0,"[user %d]Print rules for me only",pID[0])
 printrules(pID[0])
}
public rules(id, level, cid)
{
 new pID[1]
 pID[0] = id
 
 if (!cmd_access(id, level, cid, 0)) {  // NOT ADMIN
  return PLUGIN_HANDLED
 }
 
 // read file to all users
 pID[0] = 0
 console_print(0,"[user %d]Print rules for all",id)
 printrules(pID[0])
 
 // Reset scheduled task after display
 if (get_cvar_float("rules_interval") > 0) {
  if (task_exists(2)) {
  change_task(2, get_cvar_float("rules_interval"))
  } else {
  set_task(get_cvar_float("rules_interval"), "rules", 200, "", 0, "b")
  }
 }
 
 return PLUGIN_HANDLED
}

I Seriously see no diffrence except for the authors name... :shock:

Hawk552 01-19-2007 17:07

Re: Server Rules , /ShowRules , By , Saam5
 
Never do this again. You risk being banned by the admins.

For now, trashed.


All times are GMT -4. The time now is 20:14.

Powered by vBulletin®
Copyright ©2000 - 2024, vBulletin Solutions, Inc.