LoGD Standardrelease steht hier zum Download zur Verfügung!
Zeige Source: /setnewday.php
Hier klicken für den Source, ODER
Weitere Dateien, von denen du den Quelltext sehen kannst:
(Das Lesen des Source, um sich spielerische Vorteile zu verschaffen, ist nicht erlaubt.
Solltest du Schwachstellen oder Fehler entdecken, bist du als Spieler verpflichtet, diese zu melden.)<?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)getsetting("expirecontent",180)>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"))."'";
db_query($sql);
$sql = "UPDATE accounts SET jailtime=jailtime-1 WHERE jailtime > 0";
db_query($sql);
//Wettermod by Nyx
$date = getsetting('gamedate','0000-01-01');
$date = explode('-',$date);
$monat = $date[1];
if (($monat == 1) || ($monat == 2)) {
switch(e_rand(1,3)) {
case 1:
$clouds = "kalt mit Schneefall";
break;
case 2:
$clouds = "klirrend kalt bei klarem Himmel";
break;
case 3:
$clouds = "kalt mit Schneegestöber";
break;
}
}
elseif (($monat == 3) || ($monat == 4)) {
switch(e_rand(1,3)) {
case 1:
$clouds = "regnerisch";
break;
case 2:
$clouds = "neblig";
break;
case 3:
$clouds = "windig";
break;
}
}
elseif (($monat == 5) || ($monat == 6)) {
switch(e_rand(1,4)) {
case 1:
$clouds = "bewölkt";
break;
case 2:
$clouds = "kühl bei klarem Himmel";
break;
case 3:
$clouds = "stark windig mit vereinzelten Regenschauern";
break;
case 4:
$clouds = "aufgelockert und etwas wärmer";
break;
}
}
elseif (($monat == 7) || ($monat == 8)) {
switch(e_rand(1,4)) {
case 1:
$clouds = "warm und schwül";
break;
case 3:
$clouds = "sonnig und heiß";
break;
case 3:
$clouds = "warm mit Sommergewitter";
break;
case 4:
$clouds = "sehr, sehr heiß";
break;
}
}
elseif (($monat == 9) || ($monat == 10)) {
switch(e_rand(1,5)) {
case 1:
$clouds = "sehr warm";
break;
case 2:
$clouds = "stark windig, aber warm";
break;
case 3:
$clouds = "regnerisch mit Gewitterstürmen";
break;
case 4:
$clouds = "kühl";
break;
case 5:
$clouds = "windig und frisch";
break;
}
}
elseif (($monat == 11) || ($monat == 12)) {
switch(e_rand(1,5)) {
case 1:
$clouds = "kalt";
break;
case 2:
$clouds = "bewölkt bei leichtem Schneefall";
break;
case 3:
$clouds = "kalt bei flockigem Weihnachtsschneefall";
break;
case 4:
$clouds = "kalt bei Schneeregen";
break;
case 5:
$clouds = "saukalt bei klarem Himmel";
break;
}
}
savesetting("weather",$clouds);
if (e_rand(1,7)==1){
savesetting("vendor","1");
$sql = "INSERT INTO news(newstext,newsdate,accountid) VALUES ('`qDer Wanderhändler ist heute in Simahr!`0',NOW(),0)";
db_query($sql) or die(db_error($link));
}else if (e_rand(1,7)==2){
savesetting("vendor","2");
$sql = "INSERT INTO news(newstext,newsdate,accountid) VALUES ('`qDer Wanderhändler ist heute in `6Nollopa`q!`0',NOW(),0)";
db_query($sql) or die(db_error($link));
}else if (e_rand(1,7)==3){
savesetting("vendor","3");
$sql = "INSERT INTO news(newstext,newsdate,accountid) VALUES ('`qDer Wanderhändler ist heute in `6Artep`q!`0',NOW(),0)";
db_query($sql) or die(db_error($link));
}else if (e_rand(1,7)==4){
savesetting("vendor","4");
$sql = "INSERT INTO news(newstext,newsdate,accountid) VALUES ('`qDer Wanderhändler ist heute in `6Necron`q!`0',NOW(),0)";
db_query($sql) or die(db_error($link));
}else if (e_rand(1,7)==5){
savesetting("vendor","5");
$sql = "INSERT INTO news(newstext,newsdate,accountid) VALUES ('`qDer Wanderhändler ist heute im `6Handelshafen Eythgim`q!`0',NOW(),0)";
db_query($sql) or die(db_error($link));
}else if (e_rand(1,7)==6){
savesetting("vendor","6");
$sql = "INSERT INTO news(newstext,newsdate,accountid) VALUES ('`qDer Wanderhändler ist heute im `6Sanela`q!`0',NOW(),0)";
db_query($sql) or die(db_error($link));
}else{
savesetting("vendor","0");
}
// Handelssystem by Morpheus
// Holzpreis am Tag
$date = getsetting('gamedate','0000-01-01');
$date = explode('-',$date);
$monat = $date[1];
if (($monat ==01) || ($monat ==02) || ($monat ==03) || ($monat == 10) || ($monat == 11) || ($monat == 12)) {
srand ((double)microtime()*1000000);
$preis= rand(40,100);
savesetting("holzpreis",$preis);
}
if (($monat ==04) || ($monat ==05) || ($monat ==06) || ($monat ==07) || ($monat ==08) || ($monat ==09)) {
srand ((double)microtime()*1000000);
$preis= rand(10,80);
savesetting("holzpreis",$preis);
}
// Holzhandel Ende
//Fremde Händler Setting
if (e_rand(1,9)==1){
savesetting("ship","1");
$sql = "INSERT INTO news(newstext,newsdate,accountid) VALUES ('`#Die `tPhönizier `#haben heute im `^Handelshafen Eythgim `#angelegt!`0',NOW(),0)";
db_query($sql) or die(db_error($link));
}else{
if (e_rand(1,9)==2){
savesetting("ship","2");
$sql = "INSERT INTO news(newstext,newsdate,accountid) VALUES ('`#Die `&Ägypter `#haben heute im `^Handelshafen Eythgim `#angelegt!`0',NOW(),0)";
db_query($sql) or die(db_error($link));
}else{
if (e_rand(1,9)==3){
savesetting("ship","3");
$sql = "INSERT INTO news(newstext,newsdate,accountid) VALUES ('`#Die `TNordmänner `#haben heute im `^Handelshafen Eythgim `#angelegt!`0',NOW(),0)";
db_query($sql) or die(db_error($link));
}else{
savesetting("ship","0");
}
}
}
//Fremde Händler Ende
//Mondphasen by Morpheus
$sql = "SELECT * FROM monde WHERE mondname='schmiedel'";
$result = db_query($sql);
$row = db_fetch_assoc($result);
$mz1=$row[zyklus];
if ($mz1==32){
$sql = "UPDATE monde SET zyklus=1 WHERE mondname='schmiedel'";
db_query($sql);
}else{
$newm=($row[zyklus]+1);
$sql = "UPDATE monde SET zyklus= \"".$newm."\" WHERE mondname='schmiedel'";
db_query($sql);
}
if ($mz1<5){
$mo="kaum zu sehen";
}elseif (($mz1>=5) && ($mz1<9)){
$mo="sichelförmig und zunehmend";
}elseif (($mz1>=9) && ($mz1<13)){
$mo="halb und zunehmend";
}elseif (($mz1>=13) && ($mz1<17)){
$mo="fast voll und zunehmend";
}elseif (($mz1>=17) && ($mz1<21)){
$mo="voll";
}elseif (($mz1>=21) && ($mz1<25)){
$mo="fast voll und abnehmend";
}elseif (($mz1>=25) && ($mz1<29)){
$mo="halb und abnehmend";
}elseif (($mz1>=29) && ($mz1<33)){
$mo="sichelförmig und abnehmend";
}
savesetting("mond1",$mo);
$sql = "SELECT * FROM monde WHERE mondname='karulda'";
$result = db_query($sql);
$row = db_fetch_assoc($result);
$mz2=$row[zyklus];
if ($mz2==40){
$sql = "UPDATE monde SET zyklus=1 WHERE mondname='karulda'";
db_query($sql);
}else{
$newm=($row[zyklus]+1);
$sql = "UPDATE monde SET zyklus= \"".$newm."\" WHERE mondname='karulda'";
db_query($sql);
}
if ($mz2<6){
$mo1="kaum zu sehen";
}elseif (($mz2>=6) && ($mz2<11)){
$mo1="sichelförmig und zunehmend";
}elseif (($mz2>=11) && ($mz2<16)){
$mo1="halb und zunehmend";
}elseif (($mz2>=16) && ($mz2<21)){
$mo1="fast voll und zunehmend";
}elseif (($mz2>=21) && ($mz2<26)){
$mo1="voll";
}elseif (($mz2>=26) && ($mz2<31)){
$mo1="fast voll und abnehmend";
}elseif (($mz2>=31) && ($mz2<36)){
$mo1="halb und abnehmend";
}elseif (($mz2>=36) && ($mz2<41)){
$mo1="sichelförmig und abnehmend";
}
savesetting("mond2",$mo1);
//Mondphasen Ende
// 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,status=3 WHERE owner=$row[acctid] AND status=1";
db_query($sql);
$sql = "UPDATE houses SET owner=0,status=4 WHERE owner=$row[acctid] AND status=0";
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;
//Friedhof Skript by Samsa (Idee: Fenja)
$delaccts = '0';
$sql = "SELECT * 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":"")
.")";
$result = db_query($sql);
while ($row = db_fetch_assoc($result)) {
$delaccts .= ','.$row['acctid'];
if ($row['acctid']==getsetting("hasegg",0)) savesetting("hasegg","0");
//Friedhof Skript by Samsa (Idee: Fenja)
$sql="INSERT INTO graeber (name,spruch,status,level,age,titel,dk,sex) VALUES ('".$row[login]."','".$spruch."','2','".$row[level]."','".$row[age]."','".$row[title]."','".$row[dk]."','".$row[sex]."')";
db_query($sql) or die(db_error(LINK));
}db_free_result($result);
$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
//Ende Friedhof Skript
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");
}
//Dorfangriff by -DoM (http://logd.gloth.org) (logd@gloth.org) Anfang:
$howmuchdays = getsetting("datage",0);
$ststus = getsetting("angriff",0);
if (($howmuchdays>1) && ($ststus==0)){
savesetting("datage",$howmuchdays-1);
}
if (($howmuchdays==1) && ($ststus==0)){
$anzahl = (e_rand(1000,3000));
$name = array(1=>"`#He`8ili`#ge Kr`8ieg`#er`0","Ratten","Plünderer","`9G`&a`9l`&l`9i`&e`9r`0","Banditen","Hunnen","Räuber","Römer","Piraten"
,"Kreuzritter","Bewohner Wyrmlands","Heuschrecken","Centauren","Titanen","Skyten","`4Gr`2uft `4Ge`2se`4ll`2en`0"
,"`4Grab`6schän`4der`0","`\$Schreckens`7bringer`0","`QK`Tnochen`Qb`Trecher`0","`2D`@r`2a`2c`@h`2e`@n`2z`@ö`2l`@l`2n`@e`2r`0"
,"`~Ork`Tschlächter`0","`TW`tütende `TO`trks`0","`2Kampfzwerge`0","`4W`\$esen `4d`\$er `4N`\$acht`0","`3Schreiende `#Banshees`0"
,"`QD`8i`Qe `QI`8lluminat`Qi`0","`7Wargh Wölfe");
$zufallsname = (e_rand(1,27));
savesetting("gegner",$name[$zufallsname]);
savesetting("dangreifer",$anzahl);
savesetting("angriff",1);
$wolken="`Qes purzeln ".$name[$zufallsname]."`Q vom Himmel";
savesetting("weather",$wolken);
}
//Dorfangriff Ende
?>