Benutzer Diskussion:Darcduck: Unterschied zwischen den Versionen
Aus Eressea
Zur Navigation springenZur Suche springen
Enno (Diskussion | Beiträge) Keine Bearbeitungszusammenfassung |
code hervorgehoben |
||
Zeile 19: | Zeile 19: | ||
Ralf | Ralf | ||
Markup("eresseaturn","directives","/\\(:turn\\s*(\\d+):\\)/e",'EresseaTurn($1)'); | |||
function EresseaTurn($turn) | |||
{ | |||
$EresseaSeasons=array(); | |||
$EresseaMonth=array(); | |||
$EresseaWeeks=array(); | |||
// Alte Zeitrechnung | |||
$EresseaSeasons[1]=array("Winter", "Winter", "Winter", "Frühling", "Frühling", "Frühling", | |||
"Sommer", "Sommer", "Sommer", "Herbst", "Herbst", "Herbst"); | |||
$EresseaMonth[1]=array("Januar","Februar", "März", "April", "Mai", "Juni", | |||
"Juli", "August", "September", "Oktober", "November", "Dezember"); | |||
$EresseaWeeks[1]=array(); | |||
// Neue Zeitrechnung | |||
$EresseaSeasons[2]=array("Sommer", "Herbst", "Herbst", "Winter", "Winter", "Winter", | |||
"Frühling", "Frühling", "Sommer"); | |||
$EresseaMonth[2]=array("Feldsegen","Nebeltage", "Sturmmond", "Herdfeuer", "Eiswind", "Schneebann", | |||
"Blütenregen", "Mond der milden Winde", "Sonnenfeuer"); | |||
$EresseaWeeks[2]=array("Erste", "Zweite", "Letzte"); | |||
$second_era_start=184; | |||
if (is_numeric($turn)) | |||
{ | |||
$turn=intval($turn); | |||
if ($turn<$second_era_start) | |||
{ | |||
$era=1; | |||
$normturn=$turn-1; | |||
} else | |||
{ | |||
$era=2; | |||
$normturn=$turn-$second_era_start; | |||
} | |||
$turns_per_month=max(1,count($EresseaWeeks[$era])); | |||
$turns_per_year=count($EresseaMonth[$era])*$turns_per_month; | |||
$year=floor($normturn/$turns_per_year)+1; | |||
$month=floor(($normturn-($year-1)*$turns_per_year)/$turns_per_month); | |||
$week=$normturn%$turns_per_month; | |||
$resultStr=($era==2)?$EresseaWeeks[$era][$week]." Woche des Monats ":""; | |||
$resultStr.=$EresseaMonth[$era][$month]; | |||
$resultStr.=" des Jahres ".$year; | |||
$resultStr.=" ($turn, ".$EresseaSeasons[$era][$month].")"; | |||
} else | |||
{ | |||
$resultStr=$turn; | |||
} | |||
return $resultStr; | |||
} | |||
---- | ---- |
Version vom 1. November 2007, 10:10 Uhr
Hallo Darcduck,
wenn ich das richtig erinnere gibt es bir Dir im Wiki doch was mit Rundennummer => Woche in Eressea. Kannst/Magst Du das hier auch zur Verfügung stellen?
Viele Grüße
Obermagier --Bruck 22:16, 18. Okt 2007 (CEST)
Hallo Bruck,
das Skript selbst ist ja recht simpel, man muss es halt nur als "Syntax" irgendwo im Wiki hinterlegen. Ich kann es also Enno zur Verfügung stellen, einbauen muss er es aber ;-)
Leider ist es noch nicht multilingual und bei der Einbindung in Sätze passt es auch nicht immer so richtig.
Grüsse
Ralf
Markup("eresseaturn","directives","/\\(:turn\\s*(\\d+):\\)/e",'EresseaTurn($1)');
function EresseaTurn($turn) { $EresseaSeasons=array(); $EresseaMonth=array(); $EresseaWeeks=array(); // Alte Zeitrechnung $EresseaSeasons[1]=array("Winter", "Winter", "Winter", "Frühling", "Frühling", "Frühling", "Sommer", "Sommer", "Sommer", "Herbst", "Herbst", "Herbst"); $EresseaMonth[1]=array("Januar","Februar", "März", "April", "Mai", "Juni", "Juli", "August", "September", "Oktober", "November", "Dezember"); $EresseaWeeks[1]=array(); // Neue Zeitrechnung $EresseaSeasons[2]=array("Sommer", "Herbst", "Herbst", "Winter", "Winter", "Winter", "Frühling", "Frühling", "Sommer"); $EresseaMonth[2]=array("Feldsegen","Nebeltage", "Sturmmond", "Herdfeuer", "Eiswind", "Schneebann", "Blütenregen", "Mond der milden Winde", "Sonnenfeuer"); $EresseaWeeks[2]=array("Erste", "Zweite", "Letzte"); $second_era_start=184; if (is_numeric($turn)) { $turn=intval($turn); if ($turn<$second_era_start) { $era=1; $normturn=$turn-1; } else { $era=2; $normturn=$turn-$second_era_start; } $turns_per_month=max(1,count($EresseaWeeks[$era])); $turns_per_year=count($EresseaMonth[$era])*$turns_per_month; $year=floor($normturn/$turns_per_year)+1; $month=floor(($normturn-($year-1)*$turns_per_year)/$turns_per_month); $week=$normturn%$turns_per_month; $resultStr=($era==2)?$EresseaWeeks[$era][$week]." Woche des Monats ":""; $resultStr.=$EresseaMonth[$era][$month]; $resultStr.=" des Jahres ".$year; $resultStr.=" ($turn, ".$EresseaSeasons[$era][$month].")"; } else { $resultStr=$turn; } return $resultStr; }
Was soll das tun? gibt's da einen Link zu einer Beispielseite? Enno 17:11, 29. Okt 2007 (CET)