anpera.net
https://anpera.homeip.net/phpbb3/

Bart/Haar länge
https://anpera.homeip.net/phpbb3/viewtopic.php?f=43&t=4392
Seite 1 von 1

Autor:  delord [ Fr 14 Mär, 2008 15:33 ]
Betreff des Beitrags:  Bart/Haar länge

Ich hab ein kleines Skript geschrieben wo die Haar(bei weiblichen Usern) der Bart(bei männlichen Usern) pro Tag immer länger werden.^^ In der Bio steht dann wie lang das Haar der Bart ist.
Im inn kann man sich von Credik die Haare/Bart abschneiden lassen.. Würde mich freuen wenn jemand dieses system erweitert....

SQL:
ALTER TABLE `accounts` ADD `haar` TEXT NOT NULL ;

Ich habe Text genommen da der Baar oder die Haar länge im laufe des Spiels bei manchen Usern ziemlich groß sein kann...


Öffne newday.php

Suche:
if ($session['user']['specialty']==3 and $settings['weather']=="Neblig"){
output("`^`nDer Nebel bietet Dieben einen zusätzlichen Vorteil. Du bekommst eine zusätzliche Anwendung.`n");
$session[user][thieveryuses]++;
}
}

Danach einfügen:
//Bart-Haar Addon by Derk Dekena alias Delord

//Die Zahl 0.01 gibt an wie viele cm das Haar/Bart jeden Tag wächst
$more = 0.01;


if($session[user][haar] == "")
$session[user][haar] = $more;
else
$session[user][haar] += $more;
output("`&Als du aufgewacht bist, merkst du das dein ".($session[user][sex]==0?"Bart":"Haar")." länger geworden ist. Er ist `^".$session[user][haar]."`&cm lang.`n");

SAVE & CLOSE

Öffne bio.php

SUCHE:
punch,reputation,birthday,

DANACH:
haar

Suche:
output("`^Geschlecht: `@".($row[sex]?"Weiblich":"Männlich")."`n");

Danach einfügen:
output("`^".($row[sex]?"Haar":"Bart")."länge: `@".$row[haar]."cm`n");

SAVE & CLOSE

Öffne inn.php

SUCHE:
else if ($HTTP_GET_VARS[act]=="ale"){

DAVOR:
else if ($HTTP_GET_VARS[act]=="schneiden"){
output("Credik holt eine Schere als du schon platz genommen hast auf einem Barhocker. Als er endlich eine gefunden hatte, fing er auch gleich an. Nach wenigen Minuten ist alles ab. Du dankst Credik mit einem Händeschütteln.");
$session[user][haar] = 0;
}

SUCHE:
addnav("Edelsteine","inn.php?op=bartender&act=gems");
DANACH:
addnav(($session[user][sex]?"Haare":"Bart")." abschneiden lassen","inn.php?op=bartender&act=schneiden");

SAVE & CLOSE;

Fertig ;)


Für eventuelle Bags kann ich nichts ich habe das Skript nach besten Gewissen Programmiert...


MFG
Delord

Autor:  MySql [ Fr 14 Mär, 2008 15:48 ]
Betreff des Beitrags:  Re: Bart/Haar länge

SQL ist falsch.

TEXT ist für Texte, wie der Name schon sagt.

Benutze doc bitte TINYINT, INT, BIGINT etc. pp.

Für die , die es schon drin haben:

$this->bbcode_second_pass_code('', 'ALTER TABLE accounts CHANGE `haar` `haar` INT(11) NOT NULL default 0;')

Ansonsten:

$this->bbcode_second_pass_code('', 'ALTER TABLE accounts ADD haar TINYINT(5) NOT NULL default 0;')

Das ist natürlich, sehr, sehr klein..

oder

$this->bbcode_second_pass_code('', 'ALTER TABLE accounts ADD haar INT(11) NOT NULL default 0;')

Schon sehr, sehr umfangreich.

bzw.

$this->bbcode_second_pass_code('', 'ALTER TABLE accounts ADD haar BIGINT(15) NOT NULL default 0;')

Riesig..

Natürlich, musst dann auch den Einbau dementsprechend ändern.
My.

Autor:  Eliwood [ Fr 14 Mär, 2008 16:21 ]
Betreff des Beitrags:  Re: Bart/Haar länge

tinyint unsigned: 255 ((2^8)-1)
mediumint unsigned: 65'535 ((2^16)-1)
int unsigned: 4'294'967'295 ((2^32)-1)
bigint unsigned: 18'446'744'073'709'551'615 ((2^64)-1)

Hier wäre wohl mediumint unsigned das, was man eher nehmen sollte. tinyint unsigned sollte aber auch reichen.

Autor:  Nightborn [ Fr 14 Mär, 2008 16:46 ]
Betreff des Beitrags:  Re: Bart/Haar länge

warum muß man mit sowas die accounts tabelle zukleistern.

und dann immer wieder die haare geladen bekommen.

Autor:  MySql [ Fr 14 Mär, 2008 18:25 ]
Betreff des Beitrags:  Re: Bart/Haar länge

Nightborn hat geschrieben:
warum muß man mit sowas die accounts tabelle zukleistern.

und dann immer wieder die haare geladen bekommen.


Ähm ja. Es wäre dann ja eig. sinnvoll denn ganzen Kramm so wie die Prefs zu speichern. Halt nur nicht als Text, sollte doch gehen?????

$this->bbcode_second_pass_code('', '$session['user']['int_variables']['haare'] ++;')

?? Und bei Sachen die bei jedem neuen Tag wieder auf "0" gesetzt werden reicht doch ein $session['$what'] aus...

Autor:  Eliwood [ Fr 14 Mär, 2008 18:35 ]
Betreff des Beitrags:  Re: Bart/Haar länge

MySql hat geschrieben:
?? Und bei Sachen die bei jedem neuen Tag wieder auf "0" gesetzt werden reicht doch ein $session['$what'] aus...


... Ich hol etwas, das ich nur 1x am Tag darf. Hol mir ne neue IP. Komme wieder - mache es erneut. Und so weiter. Und so fort. Sicher, dass das das ist, was du willst?

Autor:  MySql [ Fr 14 Mär, 2008 18:57 ]
Betreff des Beitrags:  Re: Bart/Haar länge

Ok stimmt schon...
Aber das darüber wäre umsetztbar..

Autor:  dragonslayer [ Sa 15 Mär, 2008 01:23 ]
Betreff des Beitrags:  Re: Bart/Haar länge

Außerdem war es im Sinne des Autors Ganzrationale Zahlen zu verwenden.
Zitat:
$more = 0.01;

Dann wäre glaub ich float netter, wenn wir schon beim klugscheissen sind :-)

die Frage wo sowas am besten hingehört ist natürlich n bissel persönliche Vorliebe, ne?
Meine Meinung:
Prefs: Nein, da gehören Einstellungen rein
Accounts: Jein, das kleistert die accounts zu (s. Nightborn)
Extra Infos - Tabelle. Perfekt!

Was bei diesem Mod da oben aber noch fehlt wäre ein Barbierskript Oder ein Waldskript das man über seinen eigenen Bart stolpert, Zwerge eher als Menschen...

Autor:  delord [ Sa 15 Mär, 2008 03:28 ]
Betreff des Beitrags:  Re: Bart/Haar länge

ja danke für eure einfälle und int usw geht nicht da die gespeicherten zahlen Kommastellen enthalten, die If abfrage in der newday.php ist dagewessen weil ich einen Text benutzt hatte, ich hatte den text benutzt weil die zahl sehr sehr sher lang werden kann und damit ist man dann auf der sicheren seite.

Und ich würde jetzt empfehlen einen double zu nehmen:

ALTER TABLE accounts CHANGE `haar` `haar` DOUBLE(100, 2) NOT NULL default 0;

MFG
Delord

Seite 1 von 1 Alle Zeiten sind UTC + 1 Stunde
Powered by phpBB® Forum Software © phpBB Group
https://www.phpbb.com/