From e422163c8040b792f312570d91c2d9338b68f989 Mon Sep 17 00:00:00 2001 From: TELK Date: Mon, 6 May 2024 00:13:09 +0900 Subject: [PATCH] Add #198: 4x00 Diesel locomotive --- docs/changelog.md | 1 + docs/download_page/_static/K4x00_1.png | Bin 0 -> 740 bytes docs/download_page/english.html | 16 ++++- docs/download_page/english.md | 16 ++++- docs/download_page/japanese.html | 16 ++++- docs/download_page/japanese.md | 16 ++++- docs/download_page/korean.html | 16 ++++- docs/download_page/korean.md | 16 ++++- lang/english.lng | 7 ++- lang/japanese.lng | 7 ++- lang/korean.lng | 7 ++- src/locomotive/K4400/K4400.pnml | 1 + src/locomotive/K4x00/K4x00.png | Bin 0 -> 5511 bytes src/locomotive/K4x00/K4x00.pnml | 76 ++++++++++++++++++++++++ src/locomotive/K4x00/K4x00_graphic.pnml | 30 ++++++++++ src/locomotive/K4x00/K4x00_switch.pnml | 36 +++++++++++ src/sort.pnml | 1 + src/spec.py | 4 +- src/switch_list.pnml | 1 + src/train_list.pnml | 3 + 20 files changed, 248 insertions(+), 22 deletions(-) create mode 100644 docs/download_page/_static/K4x00_1.png create mode 100644 src/locomotive/K4x00/K4x00.png create mode 100644 src/locomotive/K4x00/K4x00.pnml create mode 100644 src/locomotive/K4x00/K4x00_graphic.pnml create mode 100644 src/locomotive/K4x00/K4x00_switch.pnml diff --git a/docs/changelog.md b/docs/changelog.md index 2ef64cb1..1be86e4b 100644 --- a/docs/changelog.md +++ b/docs/changelog.md @@ -1,6 +1,7 @@ 2.7.1+ ----- * 추가: 3x00호대 디젤 기관차 [#198] + * 추가: 4x00호대 디젤 기관차 [#198] * 변경: KTX-이음 그래픽 및 템플릿 변경 * 변경: KTX-이음의 기관차 출력을 8800kW에서 6080kW로 변경 * 변경: 4x00호대 디젤 기관차의 이름을 4400호대로 변경 diff --git a/docs/download_page/_static/K4x00_1.png b/docs/download_page/_static/K4x00_1.png new file mode 100644 index 0000000000000000000000000000000000000000..90b0ed9f72365d0913c526911b20adc9c4771356 GIT binary patch literal 740 zcmV_i4_(12du1ES+Re>iHemcPOdyzu@Zr-s6bR8 z5C{YU5rIH3!wE{-Zrhu?ZEvn(zZr%klb7Uuy!Y|}pZLTlu7JTujFeKX)*7W0T5AA= z5NNH@TBE!GU9L~s3OR-*rK%;iRl?9SbF(b_(0Tp^P99`79kq7VP}xKBB**n#ek?a; zu2QNUS{`MwMhF3b)*2xML(8M7)8B5|&k=G=mWD`YOjD<~P0WKY+PnJ+b(&#$in7R$ z$WcnQfFb2?P}P#MSQ|3>2m*-X_-2S1?ssO>Q41W9Vpk2W?;aXi-nLa9jAvP9qNY!i zs?tZBmd_dpd#l~L@dch-8N>GjcGZyN1#e+8c<@E*yAA--ae)m0->2RCX*t5S11fn3+&UU1@s&kj%fEekx)M*C5Jn&lp%TpxLYD-Lq zyr`Kkp?nVcx|$=UBzX++Ujr5^kPhf_jgVvfSC4b(QYyf<%o1XkVtVSd9-Bd!DR$^!3pup>}v$j*iA{TcFFe zDaPAd?IwshN~M=D8T8T8!}VQAwCPJ{%(o~dorN#~^6u#)=1-EejQlL}0(itP{k}~fUZ105 km/h 105 km/h - 1173 kW + 875 kW 75 t 1958 - -
4x00 Diesel Locomotive
4x00 Diesel Locomotive
4x00 Diesel Locomotive
+ +
4x00 Diesel Locomotive
4x00 Diesel Locomotive 105 km/h 105 km/h + 1310 kW + 78 t + 1963 + + +
4400 Diesel Locomotive
4400 Diesel Locomotive
4400 Diesel Locomotive
+ 4400 Diesel Locomotive + 105 km/h + 105 km/h + 1230 kW 88 t 2001 diff --git a/docs/download_page/english.md b/docs/download_page/english.md index 97c6f210..7afc66a5 100644 --- a/docs/download_page/english.md +++ b/docs/download_page/english.md @@ -55,16 +55,26 @@ 105 km/h 105 km/h - 1173 kW + 875 kW 75 t 1958 - -
4x00 Diesel Locomotive
4x00 Diesel Locomotive
4x00 Diesel Locomotive
+ +
4x00 Diesel Locomotive
4x00 Diesel Locomotive 105 km/h 105 km/h + 1310 kW + 78 t + 1963 + + +
4400 Diesel Locomotive
4400 Diesel Locomotive
4400 Diesel Locomotive
+ 4400 Diesel Locomotive + 105 km/h + 105 km/h + 1230 kW 88 t 2001 diff --git a/docs/download_page/japanese.html b/docs/download_page/japanese.html index e67fc64d..8fe5e2ca 100644 --- a/docs/download_page/japanese.html +++ b/docs/download_page/japanese.html @@ -55,16 +55,26 @@ 105 km/h 105 km/h - 1173 kW + 875 kW 75 t 1958 - -
4x00号帯ディーゼル機関車
4x00号帯ディーゼル機関車
4x00号帯ディーゼル機関車
+ +
4x00号帯ディーゼル機関車
4x00号帯ディーゼル機関車 105 km/h 105 km/h + 1310 kW + 78 t + 1963 + + +
4400号帯ディーゼル機関車
4400号帯ディーゼル機関車
4400号帯ディーゼル機関車
+ 4400号帯ディーゼル機関車 + 105 km/h + 105 km/h + 1230 kW 88 t 2001 diff --git a/docs/download_page/japanese.md b/docs/download_page/japanese.md index e67fc64d..8fe5e2ca 100644 --- a/docs/download_page/japanese.md +++ b/docs/download_page/japanese.md @@ -55,16 +55,26 @@ 105 km/h 105 km/h - 1173 kW + 875 kW 75 t 1958 - -
4x00号帯ディーゼル機関車
4x00号帯ディーゼル機関車
4x00号帯ディーゼル機関車
+ +
4x00号帯ディーゼル機関車
4x00号帯ディーゼル機関車 105 km/h 105 km/h + 1310 kW + 78 t + 1963 + + +
4400号帯ディーゼル機関車
4400号帯ディーゼル機関車
4400号帯ディーゼル機関車
+ 4400号帯ディーゼル機関車 + 105 km/h + 105 km/h + 1230 kW 88 t 2001 diff --git a/docs/download_page/korean.html b/docs/download_page/korean.html index 9381faa2..077cff4b 100644 --- a/docs/download_page/korean.html +++ b/docs/download_page/korean.html @@ -55,16 +55,26 @@ 105 km/h 105 km/h - 1173 kW + 875 kW 75 t 1958 - -
4x00호대 디젤 기관차
4x00호대 디젤 기관차
4x00호대 디젤 기관차
+ +
4x00호대 디젤 기관차
4x00호대 디젤 기관차 105 km/h 105 km/h + 1310 kW + 78 t + 1963 + + +
4400호대 디젤 기관차
4400호대 디젤 기관차
4400호대 디젤 기관차
+ 4400호대 디젤 기관차 + 105 km/h + 105 km/h + 1230 kW 88 t 2001 diff --git a/docs/download_page/korean.md b/docs/download_page/korean.md index 9381faa2..077cff4b 100644 --- a/docs/download_page/korean.md +++ b/docs/download_page/korean.md @@ -55,16 +55,26 @@ 105 km/h 105 km/h - 1173 kW + 875 kW 75 t 1958 - -
4x00호대 디젤 기관차
4x00호대 디젤 기관차
4x00호대 디젤 기관차
+ +
4x00호대 디젤 기관차
4x00호대 디젤 기관차 105 km/h 105 km/h + 1310 kW + 78 t + 1963 + + +
4400호대 디젤 기관차
4400호대 디젤 기관차
4400호대 디젤 기관차
+ 4400호대 디젤 기관차 + 105 km/h + 105 km/h + 1230 kW 88 t 2001 diff --git a/lang/english.lng b/lang/english.lng index 7ce99bcb..d7125ad8 100644 --- a/lang/english.lng +++ b/lang/english.lng @@ -16,7 +16,8 @@ STR_PASHI5_NAME :Pashi 5 Steam Locomo STR_MIKA3_NAME :Mika 3 Steam Locomotive STR_K2x00_NAME :2x00 Diesel Locomotive STR_K3x00_NAME :3x00 Diesel Locomotive -STR_K4400_NAME :4x00 Diesel Locomotive +STR_K4x00_NAME :4x00 Diesel Locomotive +STR_K4400_NAME :4400 Diesel Locomotive STR_K5000_NAME :5000 Diesel Locomotive STR_K6x00_NAME :6x00 Diesel Locomotive STR_K7000_NAME :7000 Diesel Locomotive @@ -101,6 +102,9 @@ STR_REFIT_LIVERY_THESEDAYS : (Current livery) STR_REFIT_LIVERY_2x00_BLACK : (US Army livery: Black) STR_REFIT_LIVERY_2x00_BLACK_ORANGE_1 : (KNR first livery: Black & Narrow Orange) STR_REFIT_LIVERY_2x00_BLACK_ORANGE_2 : (KNR first livery: Black & Wide Orange) +STR_REFIT_LIVERY_4x00_BLACK_ORANGE_LOWER_AIR_CHAMBER : (KNR old livery: Black & Orange, Lower air chamber) +STR_REFIT_LIVERY_4x00_GREEN_YELLOW_LOWER_AIR_CHAMBER : (KNR old livery: Green & Yellow, Lower air chamber) +STR_REFIT_LIVERY_4300_BLUE_WHITE : (KNR: 4300 Blue & White) STR_REFIT_LIVERY_6000_BLACK_ORANGE : (KNR: 6000 Black & Orange) STR_REFIT_LIVERY_6100_BLACK_ORANGE : (KNR: 6100 Black & Orange) STR_REFIT_LIVERY_6200_BLACK_ORANGE : (KNR: 6200 Black & Orange) @@ -112,6 +116,7 @@ STR_REFIT_LIVERY_7x00_CARGO : (Cargo livery) STR_REFIT_LIVERY_7x00_BLACK_ORANGE : (KNR first livery: Black & Orange) STR_REFIT_LIVERY_7x00_FIRST_KORAIL : (KNR first livery: Blue & White) STR_REFIT_LIVERY_KWANKWANG : (Kwankwang-ho) +STR_REFIT_LIVERY_BLUE_WHITE : (KNR old livery: Blue & White) STR_REFIT_LIVERY_BLACK_ORANGE : (KNR old livery: Black & Orange) STR_REFIT_LIVERY_GREEN_YELLOW : (KNR old livery: Green & Yellow) STR_REFIT_LIVERY_HAERANG : (Rail cruise 'Haerang') diff --git a/lang/japanese.lng b/lang/japanese.lng index 76518655..bb02c019 100644 --- a/lang/japanese.lng +++ b/lang/japanese.lng @@ -15,7 +15,8 @@ STR_PASHI5_NAME :バシ5形蒸気 STR_MIKA3_NAME :ミカ3形蒸気機関車 STR_K2x00_NAME :2x00号帯ディーゼル機関車 STR_K3x00_NAME :3x00号帯ディーゼル機関車 -STR_K4400_NAME :4x00号帯ディーゼル機関車 +STR_K4x00_NAME :4x00号帯ディーゼル機関車 +STR_K4400_NAME :4400号帯ディーゼル機関車 STR_K5000_NAME :5000号帯ディーゼル機関車 STR_K6x00_NAME :6x00号帯ディーゼル機関車 STR_K7000_NAME :7000号帯ディーゼル機関車 @@ -100,6 +101,9 @@ STR_REFIT_LIVERY_THESEDAYS :(現在塗色) STR_REFIT_LIVERY_2x00_BLACK :(米軍塗色:黒色) STR_REFIT_LIVERY_2x00_BLACK_ORANGE_1 :(韓国鉄道初期塗色:黒色&狭い橙色) STR_REFIT_LIVERY_2x00_BLACK_ORANGE_2 :(韓国鉄道初期塗色:黒色&広い橙色) +STR_REFIT_LIVERY_4x00_BLACK_ORANGE_LOWER_AIR_CHAMBER :(韓国鉄道旧塗色:黒色&橙色、低い空気室) +STR_REFIT_LIVERY_4x00_GREEN_YELLOW_LOWER_AIR_CHAMBER :(韓国鉄道旧塗色:緑色&黄色、低い空気室) +STR_REFIT_LIVERY_4300_BLUE_WHITE :(韓国鉄道:4300号帯青色&白色) STR_REFIT_LIVERY_6000_BLACK_ORANGE :(韓国鉄道初期塗色:6000号帯黒色&狭い橙色) STR_REFIT_LIVERY_6100_BLACK_ORANGE :(韓国鉄道初期塗色:6100号帯黒色&狭い橙色) STR_REFIT_LIVERY_6200_BLACK_ORANGE :(韓国鉄道初期塗色:6200号帯黒色&狭い橙色) @@ -113,6 +117,7 @@ STR_REFIT_LIVERY_7x00_FIRST_KORAIL :(韓国鉄道初期 STR_REFIT_LIVERY_BLACK_ORANGE :(韓国鉄道旧塗色:黒色&橙色) STR_REFIT_LIVERY_GREEN_YELLOW :(韓国鉄道旧塗色:緑色&黄色) STR_REFIT_LIVERY_KWANKWANG :(観光号) +STR_REFIT_LIVERY_BLUE_WHITE :(韓国鉄道旧塗色:青色&白色) STR_REFIT_LIVERY_HAERANG :(ヘラン) STR_REFIT_LIVERY_S_TRAIN1 :(S-train·青色) STR_REFIT_LIVERY_S_TRAIN2 :(S-train·ピンク) diff --git a/lang/korean.lng b/lang/korean.lng index 84f80f04..818aaf85 100644 --- a/lang/korean.lng +++ b/lang/korean.lng @@ -16,7 +16,8 @@ STR_PASHI5_NAME :파시 5형 증기 STR_MIKA3_NAME :미카 3형 증기 기관차 STR_K2x00_NAME :2x00호대 디젤 기관차 STR_K3x00_NAME :3x00호대 디젤 기관차 -STR_K4400_NAME :4x00호대 디젤 기관차 +STR_K4x00_NAME :4x00호대 디젤 기관차 +STR_K4400_NAME :4400호대 디젤 기관차 STR_K5000_NAME :5000호대 디젤 기관차 STR_K6x00_NAME :6x00호대 디젤 기관차 STR_K7000_NAME :7000호대 디젤 기관차 @@ -101,6 +102,9 @@ STR_REFIT_LIVERY_THESEDAYS : (현재 도색) STR_REFIT_LIVERY_2x00_BLACK : (미군 도색: 검정) STR_REFIT_LIVERY_2x00_BLACK_ORANGE_1 : (철도청 초기 도색: 검정 & 좁은 주황) STR_REFIT_LIVERY_2x00_BLACK_ORANGE_2 : (철도청 초기 도색: 검정 & 넓은 주황) +STR_REFIT_LIVERY_4x00_BLACK_ORANGE_LOWER_AIR_CHAMBER : (철도청 구 도색: 검정 & 주황, 낮은 공기실함) +STR_REFIT_LIVERY_4x00_GREEN_YELLOW_LOWER_AIR_CHAMBER : (철도청 구 도색: 녹색 & 황색, 낮은 공기실함) +STR_REFIT_LIVERY_4300_BLUE_WHITE : (철도청: 4300호대 청색 & 백색) STR_REFIT_LIVERY_6000_BLACK_ORANGE : (철도청: 6000호대 검정 & 주황) STR_REFIT_LIVERY_6100_BLACK_ORANGE : (철도청: 6100호대 검정 & 주황) STR_REFIT_LIVERY_6200_BLACK_ORANGE : (철도청: 6200호대 검정 & 주황) @@ -113,6 +117,7 @@ STR_REFIT_LIVERY_7x00_BLACK_ORANGE : (철도청 초기 STR_REFIT_LIVERY_7x00_FIRST_KORAIL : (철도청 초기 도색: 청색 & 백색) STR_REFIT_LIVERY_BLACK_ORANGE : (철도청 구 도색: 검정 & 주황) STR_REFIT_LIVERY_GREEN_YELLOW : (철도청 구 도색: 녹색 & 황색) +STR_REFIT_LIVERY_BLUE_WHITE : (철도청 구 도색: 청색 & 백색) STR_REFIT_LIVERY_KWANKWANG : (관광호) STR_REFIT_LIVERY_HAERANG : (해랑) STR_REFIT_LIVERY_S_TRAIN1 : (S-train - 파랑) diff --git a/src/locomotive/K4400/K4400.pnml b/src/locomotive/K4400/K4400.pnml index 6ce021ae..d5832da6 100644 --- a/src/locomotive/K4400/K4400.pnml +++ b/src/locomotive/K4400/K4400.pnml @@ -28,6 +28,7 @@ item(FEAT_TRAINS, ko_train_K4400, 5440) { engine_class: ENGINE_CLASS_DIESEL; sprite_id: SPRITE_ID_NEW_TRAIN; length: 6; + variant_group: ko_train_K4x00; // Spec speed: 105 km/h; diff --git a/src/locomotive/K4x00/K4x00.png b/src/locomotive/K4x00/K4x00.png new file mode 100644 index 0000000000000000000000000000000000000000..25d70a4d0f08b5320b1b5d18bdeb065216083fd0 GIT binary patch literal 5511 zcmaJ^dpuO@*WZ;W!kh?|rg1BGgJEz?xlCpfn&VQ+rI8s%nTs(pCY4i2!Wf5AIH}|o zrNWHJQ54A~%*kyk3?a8 zy(ZcMzy^&FPj7~|tBXw_m24caren+`(vW(sL395;m@U&r0zf7*0$@yXC?(v6iPHRmYa@}@ zrcE?qKU5f}QJVh=%G(tObEMLVFbiW#qd-%H84PJ{Y-$O&HbWS~%;2U-6FAbu)Z7Se zY6G{lF}H^Ob!bYw(Fs8|?r5jKd`U(qO%j7avoSG=jEppnG&iQwgH24Wt*uSqW+rB4 zMiLF9@F)r+fN4Yt*ZLa)O$-mDhtL=yR0?bjG2kRMf`QVMMEaj4kZJ$GQo{dAlO$m# z%mA8+sWE(QNq;N4y8i#FWb!}S;S6`;f8+f>fx|tcXhaitVmLK|9w;eXkk*55|svXbcE?14WSUIk>Pqj)LmU|4pPDy0hB=EK{QHJ0$>~x zLa;G+a59CPTROn)51>s=4>&p4TOP27qY-ANjtI0B68X0+ni?2ECQ=xG+Y

-ev> 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 literal 0 HcmV?d00001 diff --git a/src/locomotive/K4x00/K4x00.pnml b/src/locomotive/K4x00/K4x00.pnml new file mode 100644 index 00000000..908358cd --- /dev/null +++ b/src/locomotive/K4x00/K4x00.pnml @@ -0,0 +1,76 @@ +/*------------------------------------------------------------------------------ + 한국 열차 세트(Korean Train Set) + * Official download site : https://telk.kr/ottd/newgrf/ko_train_set + * Github repository : https://github.com/KoreanGRF/KoreanTrainSet +------------------------------------------------------------------------------*/ +/** + * K4x00 + * Note that it is based on K4x00, need to split in future + */ +SPEED_GENERAL(K4x00) +SPEED_GENERAL(K4300) +COST(K4x00) +RUNNING(K4x00) + +// Graphics +#include "K4x00_graphic.pnml" + +// Switch +#include "K4x00_switch.pnml" + +// Item +item(FEAT_TRAINS, ko_train_K4x00, 5441) { + property { + // Common properties + name: string(STR_K4x00_NAME); + climates_available: ALL_CLIMATES; + introduction_date: var_K4x00_INTRODUCTION; + track_type: RAIL; + engine_class: ENGINE_CLASS_DIESEL; + sprite_id: SPRITE_ID_NEW_TRAIN; + length: 6; + + // Spec + speed: 105 km/h; + power: POWER_IN_KW(var_K4x00_POWER); + weight: var_K4x00_WEIGHT; + tractive_effort_coefficient: 0.25; + air_drag_coefficient: 0.01; + + // Model + model_life: VEHICLE_NEVER_EXPIRES; + vehicle_life: 30; + retire_early: 0; + reliability_decay: 0; + + // Cargo + cargo_capacity: 1; + refittable_cargo_classes: NO_CARGO_CLASS; + non_refittable_cargo_classes: NO_CARGO_CLASS; + cargo_allow_refit: [PASS]; + cargo_disallow_refit: []; + + // Costs + refit_cost: 0; + running_cost_base: RUNNING_COST_DIESEL; + + // Flags + ai_special_flag: AI_FLAG_PASSENGER; + misc_flags: bitmask(TRAIN_FLAG_AUTOREFIT); + bitmask_vehicle_info: 0; + } + graphics { + default: sw_K4x00_loco; + purchase: sw_K4x00_purchase; + + speed: sw_K4x00_speed_in_custom; + cost_factor: sw_K4x00_cost; + running_cost_factor: sw_K4x00_runningcost; + cargo_capacity: 0; + + can_attach_wagon: sw_Kxxxx_attach_global; + cargo_subtype_text: sw_K4x00_cargo_subtype_text; + additional_text: string(STR_REFIT_ADDITIONAL_ABLE); + } +} +// End of "K4x00" diff --git a/src/locomotive/K4x00/K4x00_graphic.pnml b/src/locomotive/K4x00/K4x00_graphic.pnml new file mode 100644 index 00000000..7a4e7dff --- /dev/null +++ b/src/locomotive/K4x00/K4x00_graphic.pnml @@ -0,0 +1,30 @@ +/*------------------------------------------------------------------------------ + 한국 열차 세트(Korean Train Set) + * Official download site : https://telk.kr/ottd/newgrf/ko_train_set + * Github repository : https://github.com/KoreanGRF/KoreanTrainSet +------------------------------------------------------------------------------*/ + +// K4x00 +spriteset(set_K4x00_1_purchase, "./src/locomotive/K4x00/K4x00.png") { + tmpl_purchase_common(0, 0) +} +spriteset(set_K4x00_1_loco, "./src/locomotive/K4x00/K4x00.png") { // Black & Orange + tmpl_standard(80, 0) +} +spriteset(set_K4x00_2_loco, "./src/locomotive/K4x00/K4x00.png") { // Black & Orange (Low nose) + tmpl_standard(80, 30) +} +spriteset(set_K4x00_3_loco, "./src/locomotive/K4x00/K4x00.png") { // Green & Yellow + tmpl_standard(80, 60) +} +spriteset(set_K4x00_4_loco, "./src/locomotive/K4x00/K4x00.png") { // Green & Yellow (Low nose) + tmpl_standard(80, 90) +} +spriteset(set_K4x00_5_loco, "./src/locomotive/K4x00/K4x00.png") { // 4300, Blue & White (Low nose) + tmpl_standard(80, 120) +} + +// Alias of purchase image +switch(FEAT_TRAINS, SELF, sw_K4x00_purchase, cargo_subtype) { + set_K4x00_1_purchase; +} diff --git a/src/locomotive/K4x00/K4x00_switch.pnml b/src/locomotive/K4x00/K4x00_switch.pnml new file mode 100644 index 00000000..0e358a4e --- /dev/null +++ b/src/locomotive/K4x00/K4x00_switch.pnml @@ -0,0 +1,36 @@ +/*------------------------------------------------------------------------------ + 한국 열차 세트(Korean Train Set) + * Official download site : https://telk.kr/ottd/newgrf/ko_train_set + * Github repository : https://github.com/KoreanGRF/KoreanTrainSet +------------------------------------------------------------------------------*/ + + +// Refit Paintings +switch(FEAT_TRAINS, SELF, sw_K4x00_loco, cargo_subtype) { + 1: set_K4x00_1_loco; + 2: set_K4x00_2_loco; + 3: set_K4x00_3_loco; + 4: set_K4x00_4_loco; + set_K4x00_5_loco; +} +switch(FEAT_TRAINS, SELF, sw_K4x00_cargo_subtype_text, cargo_subtype) { + 1: return string(STR_REFIT_LIVERY_BLACK_ORANGE); + 2: return string(STR_REFIT_LIVERY_4x00_BLACK_ORANGE_LOWER_AIR_CHAMBER); + 3: return string(STR_REFIT_LIVERY_GREEN_YELLOW); + 4: return string(STR_REFIT_LIVERY_4x00_GREEN_YELLOW_LOWER_AIR_CHAMBER); + return string(STR_REFIT_LIVERY_4300_BLUE_WHITE); +} + +// Speed +switch(FEAT_TRAINS, SELF, sw_K4x00_speed_in_custom_nondesign, cargo_subtype) { + 1..4: var_K4x00_SPEED; + return 150; +} +switch(FEAT_TRAINS, SELF, sw_K4x00_speed_in_custom_design, cargo_subtype) { + 1..4: var_K4x00_DESIGN_SPEED; + return 150; +} +switch(FEAT_TRAINS, SELF, sw_K4x00_speed_in_custom, bool_use_max_design_speed) { + 1: return sw_K4x00_speed_in_custom_design() / 10 * coeff_speed_general; + return sw_K4x00_speed_in_custom_nondesign() / 10 * coeff_speed_general; +} \ No newline at end of file diff --git a/src/sort.pnml b/src/sort.pnml index 1b838ee5..4e1103bc 100644 --- a/src/sort.pnml +++ b/src/sort.pnml @@ -14,6 +14,7 @@ sort(FEAT_TRAINS, [ ko_train_K2x00, // 5420 ko_train_K3x00, // 5430 + ko_train_K4x00, // 5441 ko_train_K4400, // 5440 ko_train_K5000, // 5450 ko_train_K6x00, // 5460 diff --git a/src/spec.py b/src/spec.py index 0dfa494b..2a6fd9ae 100644 --- a/src/spec.py +++ b/src/spec.py @@ -13,7 +13,9 @@ trainList['PASHI5'] = 110, 110, 10, 4, 0, 0, 790, 196, (1939, 1, 1) trainList['MATE2'] = 90, 90, 10, 4, 0, 0, 1074, 179, (1943, 1, 1) trainList['K2x00'] = 105, 105, 10, 4, None, None, 597, 95, (1955, 1, 1) -trainList['K3x00'] = 105, 105, 10, 4, None, None, 1173, 75, (1958, 1, 1) +trainList['K3x00'] = 105, 105, 10, 4, None, None, 875, 75, (1958, 1, 1) +trainList['K4x00'] = 105, 105, 10, 4, None, None, 1310, 78, (1963, 1, 1) +trainList['K4300'] = 150, 150, 10, 4, None, None, 1310, 78, (1963, 1, 1) trainList['K4400'] = 105, 105, 10, 4, None, None, 1230, 88, (2001, 1, 1) trainList['K5000'] = 105, 105, 10, 4, None, None, 2347, 141, (1957, 1, 1) trainList['K6000'] = 105, 105, 10, 4, None, None, 2414, 136, (1963, 1, 1) diff --git a/src/switch_list.pnml b/src/switch_list.pnml index 5071fe78..ea6690f3 100644 --- a/src/switch_list.pnml +++ b/src/switch_list.pnml @@ -41,6 +41,7 @@ switch(FEAT_TRAINS, SELF, sw_steam_attach_global, bool_no_vehicle_attachment_res switch(FEAT_TRAINS, SELF, sw_Kxxxx_attach, vehicle_type_id) { ko_train_K2x00: return CB_RESULT_ATTACH_ALLOW; ko_train_K3x00: return CB_RESULT_ATTACH_ALLOW; + ko_train_K4x00: return CB_RESULT_ATTACH_ALLOW; ko_train_K4400: return CB_RESULT_ATTACH_ALLOW; ko_train_K5000: return CB_RESULT_ATTACH_ALLOW; ko_train_K6x00: return CB_RESULT_ATTACH_ALLOW; diff --git a/src/train_list.pnml b/src/train_list.pnml index a2ed1517..7985bb31 100644 --- a/src/train_list.pnml +++ b/src/train_list.pnml @@ -29,6 +29,9 @@ // K3x00 #include "locomotive/K3x00/K3x00.pnml" +// K4x00 +#include "locomotive/K4x00/K4x00.pnml" + // K4400 #include "locomotive/K4400/K4400.pnml"