LoGD Standardrelease steht hier zum Download zur Verfügung!
<?php
// 11092004
/*setweather.php
An element of the global weather mod Version 0.5
Written by Talisman
Latest version available at http://dragonprime.cawsquad.net
translation: anpera
*/
if ((int)Werwolf>0){
$sql = "DELETE FROM commentary WHERE postdate<'".date("Y-m-d H:i:s",strtotime(date("r")."-".getsetting("expirecontent",180)." days"))."'";
db_query($sql);
$sql = "DELETE FROM news WHERE newsdate<'".date("Y-m-d H:i:s",strtotime(date("r")."-".getsetting("expirecontent",180)." days"))."'";
db_query($sql);
}
$sql = "DELETE FROM mail WHERE sent<'".date("Y-m-d H:i:s",strtotime(date("r")."-".getsetting("oldmail",14)."days"))."'";
// Reduce time in jail for chars who need it
$sql = "UPDATE accounts SET jailtime=jailtime-1 WHERE jailtime > 0";
db_query($sql);
db_query($sql);
switch(e_rand(1,9)){
case 1:
$clouds="Wechselhaft und kühl, mit sonnigen Abschnitten";
break;
case 2:
$clouds="Warm und sonnig";
break;
case 3:
$clouds="Regnerisch";
break;
case 4:
$clouds="Neblig";
break;
case 5:
$clouds="Kalt bei klarem Himmel";
break;
case 6:
$clouds="Heiß und sonnig";
break;
case 7:
$clouds="Starker Wind mit vereinzelten Regenschauern";
break;
case 8:
$clouds="Gewittersturm";
break;
case 9:
$clouds="Schneeregen";
break;
}
savesetting("weather",$clouds);
// Vendor in town?
if (e_rand(1,3)==1){
savesetting("vendor","1");
$sql = "INSERT INTO news(newstext,newsdate,accountid) VALUES ('`qDer Wanderhändler ist heute im Dorf!`0',NOW(),0)";
db_query($sql) or die(db_error($link));
}else{
savesetting("vendor","0");
}
// Other hidden paths
$spec="Keines";
$what=e_rand(1,3);
if ($what==1) $spec="Waldsee";
if ($what==3) $spec="Orkburg";
savesetting("dailyspecial","$spec");
// Gamedate-Mod by Chaosmaker
if (getsetting('activategamedate',0)==1) {
$date = getsetting('gamedate','0000-01-01');
$date = explode('-',$date);
$date[2]++;
switch ($date[2]) {
case 32:
$date[2] = 1;
$date[1]++;
break;
case 31:
if (in_array($date[1], array(4,6,9,11))) {
$date[2] = 1;
$date[1]++;
}
break;
case 30:
if ($date[1]==2) {
$date[2] = 1;
$date[1]++;
}
break;
case 29:
if ($date[1]==2 && ($date[0]%4!=0 || ($date[0]%100==0 && $date[0]%400!=0))) {
$date[2] = 1;
$date[1]++;
}
}
if ($date[1]==13) {
$date[1] = 1;
$date[0]++;
}
$date = sprintf('%04d-%02d-%02d',$date[0],$date[1],$date[2]);
savesetting('gamedate',$date);
}
// this now includes the database cleanup from index.php
$old = getsetting("expireoldacct",45)-5;
$new = getsetting("expirenewacct",10);
$trash = getsetting("expiretrashacct",1);
$sql = "SELECT acctid,emailaddress FROM accounts WHERE 1=0 "
.($old>0?"OR (laston < \"".date("Y-m-d H:i:s",strtotime(date("r")."-$old days"))."\")\n":"")
." AND emailaddress!='' AND sentnotice=0";
$result = db_query($sql);
for ($i=0;$i<db_num_rows($result);$i++){
$row = db_fetch_assoc($result);
// can't send mail on anpera.net
mail($row[emailaddress],"LoGD Charakter verfällt",
"
Einer oder mehrere deiner Charaktere von Legend of the Green Dragon auf
".$_SERVER['SERVER_NAME'].$_SERVER['SCRIPT_NAME']."
verfällt demnächst und wird gelöscht. Wenn du den Charakter retten willst, solltest
du dich bald möglichst mal damit einloggen!
Falls der Charakter ein Haus hatte, ist dieses bereits enteignet.",
"From: ".getsetting("gameadminemail","postmaster@localhost.com")
);
$sql = "UPDATE accounts SET sentnotice=1,house=0,housekey=0,marriedto=0 WHERE acctid='$row[acctid]'";
if ((int)$row[acctid]==(int)getsetting("hasegg",0)) savesetting("hasegg",stripslashes(0));
db_query($sql);
$sql = "UPDATE houses SET owner=0 WHERE owner=$row[acctid]";
db_query($sql);
$sql = "UPDATE items SET owner=0 WHERE owner=$row[acctid]";
db_query($sql);
$sql = "DELETE FROM pvp WHERE acctid2=$row[acctid] OR acctid1=$row[acctid]";
db_query($sql) or die(db_error(LINK));
$sql = "UPDATE accounts SET charisma=0,marriedto=0 WHERE marriedto=$row[acctid]";
db_query($sql);
}
$old+=5;
$delaccts = '0';
$sql = "SELECT acctid FROM accounts WHERE superuser<=1 AND (1=0\n"
.($old>0?"OR (laston < \"".date("Y-m-d H:i:s",time()-3600*24*$old)."\")\n":"")
.($new>0?"OR (laston < \"".date("Y-m-d H:i:s",time()-3600*24*$new)."\" AND level=1 AND dragonkills=0)\n":"")
.($trash>0?"OR (laston < \"".date("Y-m-d H:i:s",time()-3600*24*($trash+1))."\" AND level=1 AND experience < 10 AND dragonkills=0)\n":"")
.")";
$sql = "SELECT * FROM markthalle_auktion";
$result = db_query($sql);
for ($i=0;$i<db_num_rows($result);$i++){
$row = db_fetch_assoc($result);
if($row[countday]==0) $row[countday]--;
}
db_query("UPDATE markthalle_auktion SET countday=countday-1 WHERE countday >= 1");
$sql = "SELECT * FROM markthalle_auktion";
$result = db_query($sql);
for ($i=0;$i<db_num_rows($result);$i++){
$row = db_fetch_assoc($result);
if($row[countday]<1){
if($row[bieterid]>0){
systemmail($row[acctid],"`^`iVersteigerung`i","Du hast bei der Versteigerung deiner Ware $row[item] $row[gold] Gold bekommen!");
systemmail($row[bieterid],"`^`iVerkauf`i","Du hast die Ware $row[item] erfolgreich für $row[gold] ersteigert!");
db_query("UPDATE accounts SET goldinbank = goldinbank-$row[gold] WHERE acctid = $row[acctid2]");
$preis = $row[gold]/4;
db_query("INSERT INTO items (name,class,owner,gold,description) VALUES ('".addslashes($row[item])."','$row[class]','".$row[acctid2]."','$preis','Ein ersteigertes Item')");
$sql2 = "SELECT * FROM accounts WHERE acctid = $row[acctid]";
$result2 = db_query($sql2);
$row2 = db_fetch_assoc($result2);
db_query("UPDATE accounts SET goldinbank = goldinbank+$row[gold] WHERE acctid = $row[acctid]");
}else{
systemmail($row[acctid],"`^`iVersteigerungsende`i","`^Du konntest die Ware $row[item]`^ mit deinem Angebot von `t".$row[gold]."`^ nicht verkaufen!");
}
db_query("DELETE FROM markthalle_auktion WHERE id = '".$row['id']."'");
}
}
$result = db_query($sql);
while ($row = db_fetch_assoc($result)) {
$delaccts .= ','.$row['acctid'];
if ($row['acctid']==getsetting("hasegg",0)) savesetting("hasegg","0");
}
$sql = "DELETE FROM accounts WHERE acctid IN ($delaccts)";
db_query($sql) or die(db_error(LINK));
$sql = "UPDATE houses SET owner=0 WHERE owner IN ($delaccts)";
db_query($sql);
$sql = "UPDATE items SET owner=0 WHERE owner IN ($delaccts) AND class='Schlüssel'";
db_query($sql);
$sql = "DELETE FROM items WHERE owner IN ($delaccts) AND owner!=0";
db_query($sql);
$sql = "DELETE FROM pvp WHERE acctid2 IN ($delaccts) OR acctid1 IN ($delaccts)";
db_query($sql) or die(db_error(LINK));
$sql = "DELETE FROM mail WHERE msgto IN ($delaccts)";
db_query($sql) or die(db_error(LINK));
$sql = "UPDATE accounts SET charisma=0,marriedto=0 WHERE marriedto IN ($delaccts)";
db_query($sql);
// end cleanup
savesetting("lastdboptimize",date("Y-m-d H:i:s"));
$result = db_query("SHOW TABLES");
for ($i=0;$i<db_num_rows($result);$i++){
list($key,$val)=each(db_fetch_assoc($result));
db_query("OPTIMIZE TABLE $val");
}
$se=getsetting("tournament_c",7)-1;
savesetting("tournament_c",$se);
if(getsetting("tournament_c",7)<=1){
savesetting("tournament_c",7);
$sql = "SELECT acctid,name,gems,goldinbank,melee_result FROM accounts WHERE melee_result > 0 ORDER BY melee_result DESC LIMIT 1";
$result = db_query($sql) or die(db_error(LINK));
for ($i = 0;$i < db_num_rows($result);$i++) {
$row = db_fetch_assoc($result);
if ($i==0){
$account=$row[acctid];
$oro=$row[goldinbank]+5000;
$gemme=$row[gems]+5;
output("`^$row[name] has $row[gems] gems and $row[goldinbank] gold in bank `n");
addnews("`#$row[name] `#hat den `^1. Platz beim Turnier der Klassen in der Kategorie Nahkampf belegt`n
`#$row[name] `#hat `^5 Edelsteine`# und `&5.000 gold bekommen !!");
}
$sql = "UPDATE `accounts` SET `gems` = $gemme WHERE `acctid` = $account";
$result1=db_query($sql);
$sql = "UPDATE `accounts` SET `goldinbank` = $oro WHERE `acctid` = $account";
$result2=db_query($sql);
if($session[user][acctid]==$row[acctid]) $session[user][gems]+=5; $session[user][goldinbank]+=5000;
}
$sql = "SELECT acctid,name,gems,goldinbank,bow_result FROM accounts WHERE bow_result > 0 ORDER BY bow_result DESC LIMIT 1";
$result = db_query($sql) or die(db_error(LINK));
for ($i = 0;$i < db_num_rows($result);$i++) {
$row = db_fetch_assoc($result);
if ($i==0){
$account=$row[acctid];
$oro=$row[goldinbank]+5000;
$gemme=$row[gems]+5;
output("`^$row[name] has $row[gems] gems and $row[goldinbank] gold in bank `n");
addnews("`#$row[name] `#hat den `^1. Platz beim Turnier der Klassen in der Kategorie Bogenschiessen belegt`n
`#$row[name] `#hat `^5 Edelsteine`# und `&5.000 gold bekommen !!");
}
$sql = "UPDATE `accounts` SET `gems` = $gemme WHERE `acctid` = $account";
$result1=db_query($sql);
$sql = "UPDATE `accounts` SET `goldinbank` = $oro WHERE `acctid` = $account";
$result2=db_query($sql);
if($session[user][acctid]==$row[acctid]) $session[user][gems]+=5; $session[user][goldinbank]+=5000;
}
$sql = "SELECT acctid,name,gems,goldinbank,emagic_result FROM accounts WHERE emagic_result > 0 ORDER BY emagic_result DESC LIMIT 1";
$result = db_query($sql) or die(db_error(LINK));
for ($i = 0;$i < db_num_rows($result);$i++) {
$row = db_fetch_assoc($result);
if ($i==0){
$account=$row[acctid];
$oro=$row[goldinbank]+5000;
$gemme=$row[gems]+5;
output("`^$row[name] has $row[gems] gems and $row[goldinbank] gold in bank `n");
addnews("`#$row[name] `#hat den `^1. Platz beim Turnier der Klassen in der Kategorie Kampfmagie belegt`n
`#$row[name] `#hat `^5 Edelsteine`# und `&5.000 gold bekommen !!");
}
$sql = "UPDATE `accounts` SET `gems` = $gemme WHERE `acctid` = $account";
$result1=db_query($sql);
$sql = "UPDATE `accounts` SET `goldinbank` = $oro WHERE `acctid` = $account";
$result2=db_query($sql);
if($session[user][acctid]==$row[acctid]) $session[user][gems]+=5; $session[user][goldinbank]+=5000;
}
$sql = "SELECT acctid,name,gems,goldinbank,gmagic_result FROM accounts WHERE gmagic_result > 0 ORDER BY gmagic_result DESC LIMIT 1";
$result = db_query($sql) or die(db_error(LINK));
for ($i = 0;$i < db_num_rows($result);$i++) {
$row = db_fetch_assoc($result);
if ($i==0){
$account=$row[acctid];
$oro=$row[goldinbank]+5000;
$gemme=$row[gems]+5;
output("`^$row[name] has $row[gems] gems and $row[goldinbank] gold in bank `n");
addnews("`#$row[name] `#hat den `^1. Platz beim Turnier der Klassen in der Kategorie Naturmagie belegt`n
`#$row[name] `#hat `^5 Edelsteine`# und `&5.000 gold bekommen !!");
}
$sql = "UPDATE `accounts` SET `gems` = $gemme WHERE `acctid` = $account";
$result1=db_query($sql);
$sql = "UPDATE `accounts` SET `goldinbank` = $oro WHERE `acctid` = $account";
$result2=db_query($sql);
if($session[user][acctid]==$row[acctid]) $session[user][gems]+=5; $session[user][goldinbank]+=5000;
}
$sql = "SELECT acctid,name,gems,goldinbank,cook_result FROM accounts WHERE cook_result > 0 ORDER BY cook_result DESC LIMIT 1";
$result = db_query($sql) or die(db_error(LINK));
for ($i = 0;$i < db_num_rows($result);$i++) {
$row = db_fetch_assoc($result);
if ($i==0){
$account=$row[acctid];
$oro=$row[goldinbank]+5000;
$gemme=$row[gems]+5;
output("`^$row[name] has $row[gems] gems and $row[goldinbank] gold in bank `n");
addnews("`#$row[name] `#hat den `^1. Platz beim Turnier der Klassen in der Kategorie Kochen belegt`n
`#$row[name] `#hat `^5 Edelsteine`# und `&5.000 gold bekommen !!");
}
$sql = "UPDATE `accounts` SET `gems` = $gemme WHERE `acctid` = $account";
$result1=db_query($sql);
$sql = "UPDATE `accounts` SET `goldinbank` = $oro WHERE `acctid` = $account";
$result2=db_query($sql);
if($session[user][acctid]==$row[acctid]) $session[user][gems]+=5; $session[user][goldinbank]+=5000;
}
$sql = "SELECT acctid,name,gems,goldinbank,swim_result FROM accounts WHERE swim_result > 0 ORDER BY swim_result DESC LIMIT 1";
$result = db_query($sql) or die(db_error(LINK));
for ($i = 0;$i < db_num_rows($result);$i++) {
$row = db_fetch_assoc($result);
if ($i==0){
$account=$row[acctid];
$oro=$row[goldinbank]+5000;
$gemme=$row[gems]+5;
output("`^$row[name] has $row[gems] gems and $row[goldinbank] gold in bank `n");
addnews("`#$row[name] `#hat den `^1. Platz beim Turnier der Klassen in der Kategorie Schwimmen belegt`n
`#$row[name] `#hat `^5 Edelsteine`# und `&5.000 gold bekommen !!");
}
$sql = "UPDATE `accounts` SET `gems` = $gemme WHERE `acctid` = $account";
$result1=db_query($sql);
$sql = "UPDATE `accounts` SET `goldinbank` = $oro WHERE `acctid` = $account";
$result2=db_query($sql);
if($session[user][acctid]==$row[acctid]) $session[user][gems]+=5; $session[user][goldinbank]+=5000;
}
db_query("UPDATE accounts SET melee_result=0,bow_result=0,gmagic_result=0,emagic_result=0,cook_result=0,swim_result=0 WHERE melee_result>=1 OR bow_result>=1 OR emagic_result>=1 OR gmagic_result>=1 OR cook_result>=1 OR swim_result>=1");
db_query("UPDATE accounts SET melee_result=0,bow_result=0,gmagic_result=0,emagic_result=0,cook_result=0,swim_result=0 WHERE melee_result>=1 OR bow_result>=1 OR emagic_result>=1 OR gmagic_result>=1 OR cook_result>=1 OR swim_result>=1");
}
//Variable Shopprices by Hadriel
$settweap=e_rand(1,10);//Weapons
switch(e_rand(1,2)){
case 1:
$ranw="-";
break;
case 2:
$ranw="+";
break;
}
$settarm=e_rand(1,10);//Armors
switch(e_rand(1,2)){
case 1:
$rana="-";
break;
case 2:
$rana="+";
break;
}
savesetting("ranw",$ranw);
savesetting("rana",$rana);
savesetting("rancow",$settweap);
savesetting("rancoa",$settarm);
?>