doppelpost ich weiß aber ich habe da noch ein paar kleine anderunen vorgenommen
zu erst habe ich mal [php]$sql = "SELECT name FROM accounts WHERE login = '".$parts[1]."' AND alive=1 AND loggedin=1 AND restorepage LIKE '%".$currentpage."%';";[/php]
um geändert und
[php]$sql = "SELECT name FROM accounts WHERE login = '".$parts[1]."' AND alive=1 AND loggedin=1;";[/php]
daraus gemacht somit ist es nicht mehr darauf beschränkt das man im gleichen raum sein muß wie ....das Opfer
dazu habe ich noch einen weiteren blitz gemacht der eine bestrafung sein soll falls mal der pranger nicht wirken sollte
kopiert das einfach rein und fertig ist es
[php]if((substr($commentary,0,6)=='/rpcmd')){
//Begin Command Mod by Hadriel v1.6
/* HISTORY: *\
| v1.0 -> release |
| v1.1 -> added 'settings' |
| v1.2 -> bugfixes |
| v1.3 -> bugfixes |
| v1.4 -> added comments |
| -> added this history |
| -> added 'addnews' |
| v1.5 -> bugfixes |
| v1.6 -> bugfixes |
| v1.7 -> added something o__Ô |
\*______________________________*/
// Commands seen at silienta-logd.de | Idea by DoM
if($session['user']['superuser']>=2){
$intro = explode(' ',$commentary,2);
$parts = explode(';',$intro[1]);
switch($parts[0]){
case "userb":
/*
case 1: /rpcmd userb;[userlogin];fullife
-> user [userlogin] gets full life
case 2: /rpcmd userb;[userlogin];onehp
-> user has only 1 hp left
case 3: /rpcmd userb;[userlogin];gold;[pieces]
-> user gets [pieces] gold. can be -[pieces].
case 4: /rpcmd userb;[userlogin];gems;[pieces]
-> user gets [pieces] gems. can be -[pieces].
*/
if(!empty($parts[1])){
switch($parts[2]){
case "fullife":
$frm = "hitpoints = maxhitpoints";
break;
case "onehp":
$frm = "hitpoints = 1";
break;
case "gold":
$frm = "gold = gold + (".$parts[3].")";
break;
case "gems":
$frm = "gems = gems + (".$parts[3].")";
break;
}
mysql_query("UPDATE accounts SET ".$frm." WHERE login = '".$parts[1]."';");
}
return false;
break;
case "addnews":
/*
case 1: /rpcmd addnews;[news]
-> adds a news '[News]'
case 2: /rpcmd addnews;Ich heisse %user% und trage %wep% und %arm%.
-> adds a news 'Ich heisse [username] und trage [userweapon] und [userarmor]
*/
if(!empty($parts[1])){
$parts[1] = str_replace('%user%',$session['user']['name'],$parts[1]);
$parts[1] = str_replace('%wep%',$session['user']['weapon'],$parts[1]);
$parts[1] = str_replace('%arm%',$session['user']['armor'],$parts[1]);
addnews($parts[1]);
return false;
}else{
return false;
}
break;
case "weather":
/*
case 1: /rpcmd weather;Sonnig und Warm
-> Change Weather to 'Sonnig und Warm'
case 2: /rpcmd weather;Sonnig und Warm;[Loginname_of_a_user]
-> Change Weather to 'Sonnig und Warm - Extra für [Name_of_[Loginname_of_a_user]]'
*/
if(!empty($parts[2])){
$sql = "SELECT name FROM accounts WHERE login = '".$parts[2]."';";
$res = mysql_query($sql);
if(mysql_num_rows($res)>0){
$row = mysql_fetch_assoc($res);
$extra = '`0 - Extra für '.$row['name'];
}
}
output('Weather called '.$parts[1].$extra);
savesetting('weather',$parts[1].$extra);
$commentary = '/me ändert das Wetter per göttlicher Macht auf '.$parts[1].$extra;
break;
case "rebirth":
/*
case 1: /rpcmd rebirth;[Loginname_of_a_user]
-> [Loginname_of_a_user] will be alive
*/
if(!empty($parts[1]) && $parts[1]!=$session['user']['login']){
$sql = "SELECT name FROM accounts WHERE login = '".$parts[1]."' AND alive=0 AND loggedin=1;";
$res = mysql_query($sql);
if(mysql_num_rows($res)>0){
$row = mysql_fetch_assoc($res);
$commentary = '/me schenkt '.$row["name"].'`0 neues Leben.';
$sql1 = "INSERT INTO commentary (postdate,section,author,comment) VALUES (now(),'ADMIN2','".$session[user][acctid]."','/me schenkt ".$row['name']."`0 neues Leben.')";
db_query($sql1) or die(db_error(LINK));
mysql_query("UPDATE accounts SET alive = 1, hitpoints = maxhitpoints WHERE login = '".$parts[1]."' AND alive=0 AND loggedin=1;");
output('Rebirth called '.$parts[1]);
}else{
return false;
}
}else{
output('Rebirth called '.$parts[1].' - ERROR!');
return false;
}
break;
case "die":
/*
case 1: /rpcmd die;[Loginname_of_a_user]
-> [Loginname_of_a_user] will be dead (works only at the same place!)
*/
$currentpage=$session['user']['restorepage'];
if (strstr($currentpage, "?comscroll=") !=""){
$position=strrpos($currentpage,"?comscroll=");
$currentpage=substr($currentpage,0,$position);
}
if (strstr($currentpage, "&comscroll=") !=""){
$position=strrpos($currentpage,"&comscroll=");
$currentpage=substr($currentpage,0,$position);
}
if (strstr($currentpage, "&c=") !=""){
$position=strrpos($currentpage,"&c=");
$currentpage=substr($currentpage,0,$position);
}
if (strstr($currentpage, "?c=") !=""){
$position=strrpos($currentpage,"?c=");
$currentpage=substr($currentpage,0,$position);
}
output($currentpage);
if(!empty($parts[1]) && $parts[1]!=$session['user']['login']){
$sql = "SELECT name FROM accounts WHERE login = '".$parts[1]."' AND alive=1 AND loggedin=1;";
$res = mysql_query($sql);
if(mysql_num_rows($res)>0){
$row = mysql_fetch_assoc($res);
$commentary = '/me lässt einen Blitz in '.$row["name"].'`0 hineinfahren. '.$row["name"].'`0 stirbt.';
mysql_query("UPDATE accounts SET alive = 0, hitpoints=0, experience=0 WHERE login = '".$parts[1]."' AND alive=1 AND restorepage LIKE '%".$currentpage."%';");
output('Die called '.$parts[1]);
}else{
return false;
}
}else{
output('Die called '.$parts[1].' - ERROR!');
return false;
}
break;
case "die2":
/*
case 1: /rpcmd die2;[Loginname_of_a_user]
-> [Loginname_of_a_user] will be dead (works only at the same place!)
*/
$currentpage=$session['user']['restorepage'];
if (strstr($currentpage, "?comscroll=") !=""){
$position=strrpos($currentpage,"?comscroll=");
$currentpage=substr($currentpage,0,$position);
}
if (strstr($currentpage, "&comscroll=") !=""){
$position=strrpos($currentpage,"&comscroll=");
$currentpage=substr($currentpage,0,$position);
}
if (strstr($currentpage, "&c=") !=""){
$position=strrpos($currentpage,"&c=");
$currentpage=substr($currentpage,0,$position);
}
if (strstr($currentpage, "?c=") !=""){
$position=strrpos($currentpage,"?c=");
$currentpage=substr($currentpage,0,$position);
}
output($currentpage);
if(!empty($parts[1]) && $parts[1]!=$session['user']['login']){
$sql = "SELECT name FROM accounts WHERE login = '".$parts[1]."' AND alive=1 AND loggedin=1;";
$res = mysql_query($sql);
if(mysql_num_rows($res)>0){
$row = mysql_fetch_assoc($res);
$commentary = '/me lässt einen Blitz in '.$row["name"].'`0 hineinfahren. '.$row["name"].'`0 wird fast ausgelöscht.';
$sql2 = "INSERT INTO commentary (postdate,section,author,comment) VALUES (now(),'ADMIN2','".$session[user][acctid]."','/me lässt einen Blitz in ".$row['name']."`0 hineinfahren. ".$row['name']."`0 stirbt.')";
db_query($sql2) or die(db_error(LINK));
mysql_query("UPDATE accounts SET alive = 0, hitpoints=0, gems=0, gold=0, experience=0, goldinbank=0, charm=0 WHERE login = '".$parts[1]."' AND alive=1 AND restorepage LIKE '%".$currentpage."%';");
output('Die called '.$parts[1]);
}else{
return false;
}
}else{
output('Die2 called '.$parts[1].' - ERROR!');
return false;
}
break;
case "setting":
/*
case 1: /rpcmd setting;[setting_name];[setting_value]
-> Setting [setting_name]'s value will be [setting_value]
*/
if(!empty($parts[1])){
if(!empty($parts[2])){
output("Changed setting ".$parts[1]." (original value ".($settings[$parts[1]]?$settings[$parts[1]]:"`iUNSET`i").") to ".$parts[2]."`n");
savesetting($parts[1],$parts[2]);
}
}
return false;
break;
default:
return false;
break;
}
}else{
return false;
}
//End Command mod by hadriel
}[/php]
bis auf den 2 blitz sind die komandos die gleichen
bei dem zweiten blitz is mr nicht besseres eingefallen als die2
hoffe das war mal was sinnvolles von mir[/php][/code]