anpera.net

anpera.net

experimental server @home
Aktuelle Zeit: Mo 20 Mai, 2019 11:40

Alle Zeiten sind UTC + 1 Stunde




Ein neues Thema erstellen Auf das Thema antworten  [ 4 Beiträge ] 
Autor Nachricht
 Betreff des Beitrags: [DS3] Die Häfen
BeitragVerfasst: Mo 03 Aug, 2009 20:34 
Offline
Profi
Profi
Benutzeravatar

Registriert: Mo 02 Feb, 2009 21:11
Beiträge: 168
Geschlecht: Männlich
LoGD: salator.selfhost.de/lotgd
Die Häfen und Seereisen

Basierend auf den Häfen von Morpheus/Apollon.
In seiner Version hat mich gestört, dass man für jedes Reiseziel 2 Dateien kopieren und anpassen muss. Das ist umständlich und fehleranfällig. Deswegen sind in meiner Version die Reiseziele zentral in einem Array in der travel.lib.php definiert.
Beschreibung des Arrays siehe travel.lib.php

Soll ein Ziel generell nur mit Einschränkungen betretbar sein, steht die Funktion check_destination_port() zur Verfügung. Hier kann beliebiger Prüf-Code eingebaut werden, z.B. ob man das goldene Ei hat oder auf Tauschquest-Level 30 ist.

Für die Nutzung dieser Hafen-Version benötigst du die Dragonslayer-Edition V3, der Einbau in ältere Versionen ist nicht getestet (aber sicher nicht unmöglich). Weiterhin solltest du in PHP ein paar mehr Kenntnisse als ein Anfänger haben.
Dieses Paket enthält nur die Dateien für die Häfen und die Reise. Die im Array angegebenen Extra-Navs dienen lediglich als Beispiel.

Einbauanleitung ist etwas umfangreicher und befindet sich in der readme


Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.

_________________
if(date("ymmd")=="10050502") echo("Der alte Sack wird heute 40");


Zuletzt geändert von Salator am Fr 14 Aug, 2009 15:42, insgesamt 2-mal geändert.

Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: [DS3] Die Häfen
BeitragVerfasst: Di 04 Aug, 2009 16:06 
Offline
Profi
Profi
Benutzeravatar

Registriert: Mo 02 Feb, 2009 21:11
Beiträge: 168
Geschlecht: Männlich
LoGD: salator.selfhost.de/lotgd
Und schon kam die erste Fehlermeldung reingeflattert. Der Troll, der zufällig erscheint und man wegen Überlastung nicht mitfahren kann, konnte auch mitten auf See auftreten.
Zur Problembehebung habe ich den Aufruf von check_destination_port() in den Block
if($_GET['pay']==1)
verschoben. Da ($_GET['work']==1) nur in den Heimathafen führen kann ist eine Prüfung hier nicht nötig und nach einem Kampf auf See ebenfalls nicht.

Außerdem muss $_GET['dist'] mit floatval statt intval konvertiert werden, sonst wird die Reise billiger als angegeben :)

Datei im ersten Post wurde gerade aktualisiert.

_________________
if(date("ymmd")=="10050502") echo("Der alte Sack wird heute 40");


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: [DS3] Die Häfen
BeitragVerfasst: Do 13 Aug, 2009 21:15 
Offline
Profi
Profi
Benutzeravatar

Registriert: Mo 20 Sep, 2004 23:43
Beiträge: 164
Wohnort: Berlin
LoGD: http://www.atrahor.de/source.php
Huhu!
Da ist ein kleiner Fehler in der travel.lib.php

Code:
   global $arr_ports;
   $location=intval($location);
   if($location==0)
   {
      $location=$session['user']['location'];
   }


Es fehlt das global $session auf zeile 159
Das dürfte sich aber nur selten bis gar nicht bemerkbar machen.

_________________
Atrahor.de
http://www.atrahor.de/ci_images.php?id=1


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: [DS3] Die Häfen
BeitragVerfasst: Fr 14 Aug, 2009 15:49 
Offline
Profi
Profi
Benutzeravatar

Registriert: Mo 02 Feb, 2009 21:11
Beiträge: 168
Geschlecht: Männlich
LoGD: salator.selfhost.de/lotgd
Hm, weiß gar nicht mehr wozu die Abfrage überhaupt gedacht war, das muss noch ein Codestück aus den Anfängen von vor 1 Jahr sein, und ich hab doch Alzheimer... Aber wenn es schonmal da ist wirds auch berichtigt, vielleicht brauchts ja jemand.

Noch ein kleiner Schönheitsfehler bei gefärbten Ortsnamen: im Hafen sieht man dann html-Code unter der Chat-Eingabezeile. Abhilfe schafft ein
$townname=strip_appoencode($townname);
in der seaport.php vor viewcommentary.

Archiv im ersten Post ist aktualisiert.

_________________
if(date("ymmd")=="10050502") echo("Der alte Sack wird heute 40");


Nach oben
 Profil  
Mit Zitat antworten  
Beiträge der letzten Zeit anzeigen:  Sortiere nach  
Ein neues Thema erstellen Auf das Thema antworten  [ 4 Beiträge ] 

Alle Zeiten sind UTC + 1 Stunde


Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 7 Gäste


Du darfst keine neuen Themen in diesem Forum erstellen
Du darfst keine Antworten zu Themen in diesem Forum erstellen
Du darfst deine Beiträge in diesem Forum nicht ändern
Du darfst deine Beiträge in diesem Forum nicht löschen
Du darfst keine Dateianhänge in diesem Forum erstellen

Suche nach:
Gehe zu:  
cron
POWERED_BY
Deutsche Übersetzung durch phpBB.de
anpera.net - Impressum