diff --git a/docs/SpriteIDs.xlsx b/docs/SpriteIDs.xlsx index 064b0a55..a39baf6c 100644 Binary files a/docs/SpriteIDs.xlsx and b/docs/SpriteIDs.xlsx differ diff --git a/docs/changelog.txt b/docs/changelog.txt index a660004e..1c46cc52 100644 --- a/docs/changelog.txt +++ b/docs/changelog.txt @@ -8,11 +8,11 @@ - Coronation Coaches - More LNER Black 5 and Jubilee liveries - GWR Great Bear and Hall class rework -- LMS 0-10-0 "Big Bertha" (needs coding) # v2.13 - Added LNER J70 - Added LNER V2 +- Added LMS 0-10-0 "Big Bertha" - Added Class 28 - Added Class 58 - Added Class 68 + Mk3 rake diff --git a/gfx/Steam/LMS_BigBertha.png b/gfx/Steam/LMS_BigBertha.png new file mode 100644 index 00000000..d4d202c9 Binary files /dev/null and b/gfx/Steam/LMS_BigBertha.png differ diff --git a/lang/english.lng b/lang/english.lng index 8b6e8ec0..87a4f7c3 100644 --- a/lang/english.lng +++ b/lang/english.lng @@ -457,15 +457,20 @@ str_LNERP2_usage :Express Passenger str_LNERP2_eos :1934-1936 str_LNERP2_liveries :LNER Green +STR_NAME_LMSBigBertha :LMS 0-10-0 "Big Bertha" +str_LMSBigBertha_usage :Banking +str_LMSBigBertha_eos :1919 +str_LMSBigBertha_liveries :LMS Red + STR_NAME_LMSJubilee :LMS 4-6-0 "Jubilee" str_LMSJubilee_usage :Express Passenger str_LMSJubilee_eos :1934-1936 -str_LMSJubilee_liveries :LNER Green +str_LMSJubilee_liveries :LMS Red STR_NAME_LMSBlack5 :LMS 4-6-0 "Black5" str_LMSBlack5_usage :Mixed Traffic str_LMSBlack5_eos :1934-1951 -str_LMSBlack5_liveries :LNER Green +str_LMSBlack5_liveries :LMS Black STR_NAME_WDTank :War Department 0-6-0 "Austerity Tank" str_WDTank_usage :Low speed freight/shunting diff --git a/src/sortpurchase.pnml b/src/sortpurchase.pnml index 39f60f23..fa9fd3ce 100644 --- a/src/sortpurchase.pnml +++ b/src/sortpurchase.pnml @@ -11,6 +11,7 @@ sort(FEAT_TRAINS, [ item_GWR_DeanGoods, item_GreatBear, item_GWRHall, + item_LMSBigBertha, item_LMSBlack5, item_LMSJubilee, item_LNERV2, diff --git a/src/trains/_spriteset/Steam_Sprites/LMS_BigBertha.pnml b/src/trains/_spriteset/Steam_Sprites/LMS_BigBertha.pnml new file mode 100644 index 00000000..255b2f81 --- /dev/null +++ b/src/trains/_spriteset/Steam_Sprites/LMS_BigBertha.pnml @@ -0,0 +1,40 @@ +spriteset(spriteset_LMSBigBertha_Purchase, "gfx/Steam/LMS_BigBertha.png") { + template_purchase_anim(0, 0) +} + +spriteset(spriteset_LMSBigBertha_LMSRed, "gfx/Steam/LMS_BigBertha.png") { + template_train24px(0, 13) +} + +spriteset(spriteset_LMSBigBertha_Tender_LMSRed, "gfx/Steam/LMS_BigBertha.png") { + template_train16px(0, 35) +} + + +switch(FEAT_TRAINS,SELF, sw_LMSBigBerthaLoco,cargo_subtype){ + 0: spriteset_LMSBigBertha_LMSRed; +} + +switch(FEAT_TRAINS,SELF, sw_LMSBigBerthaTender,cargo_subtype){ + 0: spriteset_LMSBigBertha_Tender_LMSRed; +} + +switch(FEAT_TRAINS, SELF, sw_LMSBigBertha, position_in_articulated_veh){ + 0: sw_LMSBigBerthaLoco; + 1: sw_LMSBigBerthaTender; +} + +switch(FEAT_TRAINS, SELF, switch_LMSBigBertha_length, position_in_articulated_veh) { + 0: return 6; + 1: return 4; +} + +switch (FEAT_TRAINS, SELF, switch_articulated_LMSBigBertha, extra_callback_info1) { + 1: return item_LMSBigBertha; + return CB_RESULT_NO_MORE_ARTICULATED_PARTS; //stop adding vehicle parts +} + +switch(FEAT_TRAINS,SELF,sw_LMSBigBertha_cargo_subtype_text,cargo_subtype){ + 0: return string(str_LMSRed); + return CB_RESULT_NO_TEXT; +} \ No newline at end of file diff --git a/src/trains/steam/LMS/LMS_BigBertha.pnml b/src/trains/steam/LMS/LMS_BigBertha.pnml new file mode 100644 index 00000000..41afe244 --- /dev/null +++ b/src/trains/steam/LMS/LMS_BigBertha.pnml @@ -0,0 +1,50 @@ +item (FEAT_TRAINS, item_LMSBigBertha, 703) { + property { + name: string(STR_NAME_LMSBigBertha); + climates_available: ALL_CLIMATES; + introduction_date: date(1934,2,1); + model_life: 10; + retire_early: 1; + vehicle_life: 30; + reliability_decay: 7; + refittable_cargo_classes: 0; + cargo_allow_refit: [GOOD, FOOD]; + loading_speed: 3; + cost_factor: 20; + running_cost_factor: 24; + sprite_id: SPRITE_ID_NEW_TRAIN; + speed: 50 mph; + misc_flags: TRAIN_FLAG_NO_BREAKDOWN_SMOKE; + refit_cost: 0; + track_type: RAIL; + ai_special_flag: AI_FLAG_CARGO; + power: 2000 hp; + running_cost_base: RUNNING_COST_STEAM; + dual_headed: 0; + default_cargo_type: GOOD; + cargo_capacity: 1; + weight: 105 ton; + engine_class: ENGINE_CLASS_STEAM; + tractive_effort_coefficient: 0.187561; + air_drag_coefficient: 0.1; + length: 5; + effect_spawn_model_and_powered: EFFECT_SPAWN_MODEL_STEAM; + extra_weight_per_wagon: 0; + bitmask_vehicle_info: 0; + } + graphics { + length: switch_LMSBigBertha_length; + additional_text: return(string(str_purchase_loco_with_liveries,string(str_purchase_type_steam),string(str_LMSBigBertha_usage),string(str_LMSBigBertha_eos),string(str_LMSBigBertha_liveries))); + can_attach_wagon: CB_RESULT_ATTACH_ALLOW; + cargo_capacity: return 0; + cargo_subtype_text: sw_LMSBigBertha_cargo_subtype_text; + articulated_part: switch_articulated_LMSBigBertha; + default: sw_LMSBigBertha; + purchase: spriteset_LMSBigBertha_Purchase; + colour_mapping: return PALETTE_CC_FIRST; + create_effect: steam_create_visual_effect; + sound_effect: sw_steam_sound; + cost_factor: return(GetAdjustedCost(24)); + running_cost_factor: return(GetAdjustedCost(22)); +} +} \ No newline at end of file