[v1.4] Eigene Einheiten erstellen - Printable Version +- TWLan Forum (https://twlan.org) +-- Forum: Legacy (https://twlan.org/forumdisplay.php?fid=61) +--- Forum: TWLan 1.x (DSLan) (https://twlan.org/forumdisplay.php?fid=62) +---- Forum: Deutsche Community (https://twlan.org/forumdisplay.php?fid=65) +----- Forum: Spielerprojekte (https://twlan.org/forumdisplay.php?fid=9) +------ Forum: Tutorials (https://twlan.org/forumdisplay.php?fid=11) +------ Thread: [v1.4] Eigene Einheiten erstellen (/showthread.php?tid=3710) |
Eigene Einheiten erstellen - Bettdecke1 - 09.12.2010 Hallo Community, in diesem Tutorial versuche ich euch zu erklären wie man eigene Einheiten erstellt. Funktioniert nur in Version 1.4! Einheit erstellen: 1. Die Datei {dslan}/htdocs/include/configs/ units.php mit einem Editor öffnen und am Ende aber vor dem "?>" folgenden Code einfügen: Code 1.1 Öffnet die techs.php Füge am ende der Datei aber vor dem "?>" folgendes hinzu: Code 1.2 Kommen wir nun zum bearbeiten der Einheit. Geht wieder in die units.php und bearbeitet den Code, den ihr eingefügt habt, nach euren Wünschen. Hier ein paar Informationen. Nehmen wir z.B. den Bauer Code Jetzt die techs.php: Code 2. Die Sprachdatei Geht in {dslan}/htdocs/lang/ in die de.ini Sucht nach "[configs_units]" Fügt dort hinzu: Code: bauer="Bauer" das war vor dem "=" steht, ist der Name, der auch in der units.php und techs.php benutzt wird. Diese Namen müssen gleich sein. Das, dass hinter dem "=" steht, sieht man dann in der Kaserne & und der Beschreibung der Einheit (hilfe etc.) Sucht nach "[configs_techs]" Fügt dort hinzu: Code: bauer="Bauer" Genauso wie oben 3. Die Grafiken Ihr braucht einmal eine 18x18 Grafik die unit_bauer heißen muss und ihm Typ "PNG" sein muss. Ebenfalls muss, wie bei der Sprachdatei, immer die Grafik heißen, wie es in der units.php und techs.php steht! (unit_name). Diese Grafik muss in {dslan}/htdocs/graphic/unit Dann braucht ihr 3 Grafiken in der größe von 60x60, eine muss "bauer" heißen, die 2. "bauer_cross" und die 3. "bauer_grey" jeweils im Typ "PNG" (Können die selben Grafiken sein.) Diese Grafiken müssen in {dslan}/htdocs/graphic/unit_big Hier könnt ihr euch die Grafiken downloaden. 4. Der SQL-Code Der SQL-Code an sich ist eigentlich ganz einfach: Quote:ALTER TABLE `villages` ADD `unit_bauer_tec_level` INT( 11 ) NULL DEFAULT '0' AFTER `unit_axe_tec_level` ; So muss die SQL aussehen, diese fügt ihr in http://localhost/phpmyadmin -> Datenbank lan -> "SQL" auswählen und den Code einfügen und Ausführen. Auch da immer Code: ALTER TABLE `villages` ADD `unit_name_tec_level` INT ( 11 ) NULL DEFAULT '0' AFTER `unit_axe_tec_level`; So geht das auch bei dem rest von dem Code.. Das was hinter Code: INT ( 11 ) NULL DEFAULT '0' AFTER Code: `unit_axe_tec_level`; Erstellte Einheit wieder löschen: Einfach alle Codes, die Ihr in der units.php, techs.php, de.ini löschen. Alle Grafiken die Ihr eingefügt habt löschen und die Tabelle, indem fall diese: PHP Code: ALTER TABLE `villages` ADD `unit_bauer_tec_level` INT( 11 ) NULL DEFAULT '0' AFTER `unit_axe_tec_level` ; Müssen so gelöscht werden: PHP Code: ALTER TABLE `villages` Also immer vor den Namen der Tabellen ein DROP setzen. Ich hoffe ihr habt das einigermaßen Verstanden! Bei Fragen, meldet euch einfach unten oder per PN. PS: Eure selbst erstellten Einheiten könnt ihr hier vorstellen, wenn ihr wollt. MfG Christian RE: Eigene Einheiten erstellen - Molt - 09.12.2010 3. Spoiler fehlt ein "/" Aber sonst Super! LG Molt RE: Eigene Einheiten erstellen - Bettdecke1 - 09.12.2010 Geändert, danke RE: Eigene Einheiten erstellen - ledewram - 09.12.2010 Sehr schönes Tutorial RE: Eigene Einheiten erstellen - lolli1 - 09.12.2010 nice tut sehr verständlich geschrieben in der 8.zeile steht: "die units.php mit einem ordner öffnen" muss durch editor oder so ersetzt werden^^ RE: Eigene Einheiten erstellen - Bettdecke1 - 10.12.2010 (09.12.2010, 19:29)ledewram Wrote: Sehr schönes TutorialDanke dir (09.12.2010, 22:59)lolli1 Wrote: nice tut sehr verständlich geschrieben öhm, ja ^^ Danke! RE: Eigene Einheiten erstellen - SlimShady95 - 10.12.2010 Bei PHP Code: $cl_techs->set_needed(array()); PHP Code: $cl_techs->set_needed(array('smith' => 5, 'barracks' => 10)); Sonst nettes Tut MfG Manuel RE: Eigene Einheiten erstellen - Bettdecke1 - 10.12.2010 Ach stimmt, das war das mit den gebäudevorraussetzungen Wusste doch das ich das vergessen hatte Thx RE: Eigene Einheiten erstellen - kippel-boy10 - 16.12.2010 Kannst du das mit den Gebäudevorraussetzungen oben für Anfänger dann bei arrays einfügen? Währe vielleicht für die, die sich eine Einheit erstellen möchten, hilfreich! Ansonsten DANKE! Für viele ist das genau das was sie suchen um ihr TWLAN zu personalisieren! RE: Eigene Einheiten erstellen - Bettdecke1 - 16.12.2010 (16.12.2010, 18:03)kippel-boy10 Wrote: Kannst du das mit den Gebäudevorraussetzungen oben für Anfänger dann bei arrays einfügen? Hab ich doch schon eingefügt Bitte! RE: Eigene Einheiten erstellen - Nonilol - 22.12.2010 Ich habe mir versucht (nach dem Tutorial von Bettdecke) eigene Einheiten zu erstellen. Insgesamt habe ich 3 neue Einheite eingefügt. (kann man soviele einfügen?) Bin Schritt für Schritt vorgegangen aba hab iwie ein Fehler drin den ich net finde Fatal error: Call to a member function on a non-object in C:\dslan_v1.4\htdocs\include\configs\units.php on line 209 Hier der Code von einer neuen Einheit: PHP Code: $cl_units->add_unit($lang->grab("configs_units", "nonique"),"unit_nonique"); Die dslan.bat beschwert sich über folgendes: I der Datenbakn habe ich folgendes eingefügt: ALTER TABLE `villages` ADD `unit_nonique_tec_level` INT( 11 ) NULL DEFAULT '0' AFTER `unit_axe_tec_level` ; ALTER TABLE `villages` ADD `all_unit_nonique` INT( 6 ) NULL DEFAULT '0' AFTER `all_unit_axe` ; ALTER TABLE `unit_place` ADD `unit_nonique` INT( 11 ) NULL DEFAULT '0' AFTER `unit_axe` ; ALTER TABLE `villages` ADD `unit_tamia_tec_level` INT( 11 ) NULL DEFAULT '0' AFTER `unit_nonique_tec_level` ; ALTER TABLE `villages` ADD `all_unit_tamia` INT( 6 ) NULL DEFAULT '0' AFTER `all_unit_nonique` ; ALTER TABLE `unit_place` ADD `unit_tamia` INT( 11 ) NULL DEFAULT '0' AFTER `unit_nonique` ; ALTER TABLE `villages` ADD `unit_turm_tec_level` INT( 11 ) NULL DEFAULT '0' AFTER `unit_tamia_tec_level` ; ALTER TABLE `villages` ADD `all_unit_turm` INT( 6 ) NULL DEFAULT '0' AFTER `all_tamia_axe` ; ALTER TABLE `unit_place` ADD `unit_turm` INT( 11 ) NULL DEFAULT '0' AFTER `unit_tamia` ; RE: Eigene Einheiten erstellen - k3v95 - 22.12.2010 versuch mal "" mit '' zu ersetzen, aber nur in der zeile RE: Eigene Einheiten erstellen - Bettdecke1 - 22.12.2010 Schick mal den code der in Zeile 209 steht pls RE: Eigene Einheiten erstellen - Molt - 22.12.2010 @Bettdecke: Lesen? -.- (22.12.2010, 08:33)Nonilol Wrote: LG Molt RE: Eigene Einheiten erstellen - SlimShady95 - 22.12.2010 pl4n3 hat die Frage in dem Thread im Frageforum beantwortet. Ich schreibs mal hier rein. Das $cl_techs in Zeile 209 mit $cl_units ersetzen MfG Manuel RE: Eigene Einheiten erstellen - Molt - 22.12.2010 Kopf->Tisch Hätt uns das nicht allen auffallen müssen? Danke SlimShady. LG Molt RE: Eigene Einheiten erstellen - SlimShady95 - 22.12.2010 Mal ne doofe Frage Wie bekommt man da $cl_techs rein^^ @molt: hat pl4n3 gesagt, is mir erst auch nich aufgefallen^^ Edit: Bettdecke ist Schuld, er hat falsch kopiert MfG Manuel RE: Eigene Einheiten erstellen - Nonilol - 22.12.2010 Vielen Dank dass ihr meine Frage beanwortet habt!!! RE: Eigene Einheiten erstellen - Shinigami-Sama - 03.01.2011 Ich kapier das mit dem SQL nicht. also das ist mein Script in units.php: PHP Code: $cl_units->add_unit($lang->grab("configs_units", "Steinschleuderer"),"unit_Steinschleuderer"); und das mein tech.php-Script: PHP Code: $cl_techs->add_tech($lang->grab("configs_techs", "Steinschleuderer"),"Steinschleuderer"); Also das sind meine Bilder: 1. hab ich was falsch gemacht? 2. wie muss ich das in SQL eingeben? RE: Eigene Einheiten erstellen - k3v95 - 03.01.2011 der sql könnte so aussehen: ALTER TABLE `villages` ADD `unit_Steinschleuderer_tec_level` INT( 11 ) NULL DEFAULT '0' AFTER `unit_axe_tec_level` ; ALTER TABLE `villages` ADD `all_unit_Steinschleuderer` INT( 6 ) NULL DEFAULT '0' AFTER `all_unit_axe` ; ALTER TABLE `unit_place` ADD `unit_Steinschleuderer` INT( 11 ) NULL DEFAULT '0' AFTER `unit_axe` ; |