Themabewertung:
  • 0 Bewertung(en) - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
M4nfo - a macro library for generating nfo code for TTDPatch and OpenTTD newgrfs
Verfasser Nachricht
mb
Tycoon
*****

Beiträge: 5.057
Themen: 55
Registriert seit: Mar 2005
#5
RE: M4nfo - a macro library for generating nfo code for TTDPatch and OpenTTD newgrfs
4.1 Beispiel V200

Nun wollen wir in einem einfachen Beispiel mal zusammenfassen, was wir bis jetzt haben. Wie gesagt, habe ich bereits die Version 0.9 des DB Set in die neue Syntax übertragen, so dass auch die üblicherweise vorkommenden komplizierteren Konstruktionen (zB Callbacks oder "recolourings") bereits von der aktuellen Implementierung dieser Makrosammlung abgedeckt werden.

Hier also erst mal die einfache V200:

Code:
//------------------------------------------------------------------ // BR 220 V 200 //------------------------------------------------------------------ train(10, {"BR 220 (ex V 200)"}, intro(1954) // Einführungsjahr reliability(11) // Abnahme der Fz-Verlässlichkeit vehlife(30) // Lebensdauer des Fz (in Jahren) modlife(30) // Verfügbarkeit des Modells (in Jahren) enginetype(DIESEL) // Traktionsart und Kostentabelle speed(140 km/h) // Höchstgeschwindigkeit power(2700 PS) // Dauerleistung runningcost(120) // Wartungskosten dualhead(NO) // einfache Lok capacity(0) // keine Frachtkapazität weight(80 t) // Dienstgewicht price(75) // Kaufpreis aiusage(10) // AI Rang effort(235 kN) // Zugkraft shorter(0) // normale Fahrzeuglänge retire(2) // frühzeitige Entfernung aus Kaufliste ) spriteblock( set( sprite(db_v200.pcx 66 8 01 20 8 -3 -12) sprite(db_v200.pcx 82 8 09 17 23 -14 -9) sprite(db_v200.pcx 114 8 01 12 30 -14 -8) sprite(db_v200.pcx 146 8 09 17 23 -5 -8) sprite(db_v200.pcx 178 8 01 20 8 -3 -12) sprite(db_v200.pcx 194 8 09 17 23 -16 -8) sprite(db_v200.pcx 226 8 01 12 30 -15 -8) sprite(db_v200.pcx 258 8 09 17 23 -7 -9) ) set( sprite(db_v200.pcx 66 30 01 20 8 -3 -12) sprite(db_v200.pcx 82 30 09 17 23 -14 -9) sprite(db_v200.pcx 114 30 01 12 30 -14 -8) sprite(db_v200.pcx 146 30 09 17 23 -5 -8) sprite(db_v200.pcx 178 30 01 20 8 -3 -12) sprite(db_v200.pcx 194 30 09 17 23 -16 -8) sprite(db_v200.pcx 226 30 01 12 30 -15 -8) sprite(db_v200.pcx 258 30 09 17 23 -7 -9) ) ) def(0) spriteset(move(0), load(0)) // rot def(1) spriteset(move(1), load(1)) // blau/beige def(2) yearbuilt( ref(0) ifyear(1920 .. 1974) // rot ref(1) else // blau/beige ) //------------------------------------------------------------------ // Anzeige //------------------------------------------------------------------ spriteblock( set( sprite(db_v200.pcx 226 50 01 12 30 -14 -8) // rot ) set( sprite(db_v200.pcx 226 70 01 12 30 -14 -8) // blau/beige ) ) def(0) spriteset(move(0), load(0)) // rot def(1) spriteset(move(1), load(1)) // blau/beige def(3) year( ref(0) ifyear(1920 .. 1973) // rot ref(1) else // blau/beige ) // callbacks Anzeige def(4) callback( TLH_V200 if(CB_TEXT) // Hilfstext für Lok ref(3) else // Grafik für Anzeige ) //------------------------------------------------------------------ // Wagen für V200: Passagiere (fern + extra) //------------------------------------------------------------------ def(0) yearbuilt( ref(XSPW_WRUM) ifyear(1920 .. 1960) // 1950 - 1960 switch Wrüm | Aüm ref(X_TEEHUMP) ifyear(1969 .. 1973) // switch TEE Buckel | generic ref(F_BB74) ifyear(1974 .. 1986) // DB74 ref(X_IRIC) ifyear(1987 .. 1996) // switch IR87 | IC87 ref(LF_) else // 1997- generic (k. SPW!) ) //------------------------------------------------------------------ // Wagen für V200: Post (fern + extra) //------------------------------------------------------------------ def(1) yearbuilt( ref(XP_TEE) ifyear(1969 .. 1973) // switch TEE | generic ref(FP_BB74) ifyear(1974 .. 1986) // DB74 ref(XP_IRIC) ifyear(1987 .. 1996) // switch IR87 | IC87 ref(LFP_) else // 1997- generic ) makevehicle(0x0A, link(ref(4),MENU) // Kaufmenü default(ref(2)) // Lok override(0x4D,ref(0)) // Passagiere override(0x4E,ref(1)) // Post )

Wie man sieht, sind hier die einzelnen Wagenklassen aus Gründen der Übersichtlichkeit über "label" defineirt bzw referenziert, und nicht über c-ID Nummern. Dies ist entsprechend natürlich auch für die veh-IDs möglich.

------------ Ende Teil 5 -----------------------------

Gruß
Michael
Zitat:EU-Wirtschaft- und Währungskommissar Joaquin Almunia hat alle Besorgnisse über den Schuldnerstatus Griechenlands als unbegründet zurückgewiesen.
(Dieser Beitrag wurde zuletzt bearbeitet: 11.11.2009, 22:58 von mb.)
11.11.2009, 22:58
Homepage Suchen Zitieren


Nachrichten in diesem Thema
RE: M4nfo - a macro library for generating nfo code for TTDPatch and OpenTTD newgrfs - von mb - 11.11.2009, 22:58

Möglicherweise verwandte Themen…
Thema Verfasser Antworten Ansichten Letzter Beitrag
Hilfe Diverse Fragen zu OpenTTD, TTD und TTDPatch Steinborg 7 7.685 22.07.2013, 18:26
Letzter Beitrag: Steinborg

Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste

Kontakt | Transport Tycoon Main Station | Nach oben | Archiv-Modus | RSS-Synchronisation