diff --git a/advtrains_train_subway/init.lua b/advtrains_train_subway/init.lua index c51758d..add961b 100644 --- a/advtrains_train_subway/init.lua +++ b/advtrains_train_subway/init.lua @@ -98,23 +98,46 @@ advtrains.register_wagon("subway_wagon", { custom_on_step = function(self, dtime, data, train) --set line number local line = nil - if train.line then - local lint = string.sub(train.line, 1, 1) - line = tonumber(lint) - if lint=="X" then line="X" end - end - if line and line~=self.line_cache then - local new_line_tex="advtrains_subway_wagon.png^advtrains_subway_wagon_line"..line..".png" - self.object:set_properties({ - textures={new_line_tex}, - }) - self.line_cache=line - elseif self.line_cache~=nil and line==nil then - self.object:set_properties({ - textures=self.textures, - }) - self.line_cache=nil - end + if train.line and self.line_cache ~= train.line then + self.line_cache=train.line + local lint = train.line + if string.sub(train.line, 1, 1) == "S" then + lint = string.sub(train.line,2) + end + if string.len(lint) == 1 then + if lint=="X" then line="X" end + line = tonumber(lint) + elseif string.len(lint) == 2 then + if tonumber(lint) then + line = lint + end + end + if line then + local new_line_tex="advtrains_subway_wagon.png" + if type(line)=="number" or line == "X" then + new_line_tex = new_line_tex.."^advtrains_subway_wagon_line"..line..".png" + else + local num = tonumber(line) + local red = math.fmod(line*67+101, 255) + local green = math.fmod(line*97+109, 255) + local blue = math.fmod(line*73+127, 255) + new_line_tex = new_line_tex..string.format("^(advtrains_subway_wagon_line.png^[colorize:#%X%X%X%X%X%X)^(advtrains_subway_wagon_line%s_.png^advtrains_subway_wagon_line_%s.png", math.floor(red/16), math.fmod(red,16), math.floor(green/16), math.fmod(green,16), math.floor(blue/16), math.fmod(blue,16), string.sub(line, 1, 1), string.sub(line, 2, 2)) + if red + green + blue > 512 then + new_line_tex = new_line_tex .. "^[colorize:#000)" + else + new_line_tex = new_line_tex .. ")" + end + end + self.object:set_properties({ + textures={new_line_tex}, + }) + elseif self.line_cache~=nil and line==nil then + self.object:set_properties({ + textures=self.textures, + }) + self.line_cache=nil + end + end end, }, S("Subway Passenger Wagon"), "advtrains_subway_wagon_inv.png") diff --git a/advtrains_train_subway/textures/advtrains_subway_wagon.png b/advtrains_train_subway/textures/advtrains_subway_wagon.png index 079d797..c2d18ed 100644 Binary files a/advtrains_train_subway/textures/advtrains_subway_wagon.png and b/advtrains_train_subway/textures/advtrains_subway_wagon.png differ diff --git a/advtrains_train_subway/textures/advtrains_subway_wagon_inv.png b/advtrains_train_subway/textures/advtrains_subway_wagon_inv.png index 1d0e809..c3fef1d 100644 Binary files a/advtrains_train_subway/textures/advtrains_subway_wagon_inv.png and b/advtrains_train_subway/textures/advtrains_subway_wagon_inv.png differ diff --git a/advtrains_train_subway/textures/advtrains_subway_wagon_line.png b/advtrains_train_subway/textures/advtrains_subway_wagon_line.png new file mode 100644 index 0000000..dcd5005 Binary files /dev/null and b/advtrains_train_subway/textures/advtrains_subway_wagon_line.png differ diff --git a/advtrains_train_subway/textures/advtrains_subway_wagon_line0.png b/advtrains_train_subway/textures/advtrains_subway_wagon_line0.png index c656d97..b853ef2 100644 Binary files a/advtrains_train_subway/textures/advtrains_subway_wagon_line0.png and b/advtrains_train_subway/textures/advtrains_subway_wagon_line0.png differ diff --git a/advtrains_train_subway/textures/advtrains_subway_wagon_line0_.png b/advtrains_train_subway/textures/advtrains_subway_wagon_line0_.png new file mode 100644 index 0000000..a4ba30b Binary files /dev/null and b/advtrains_train_subway/textures/advtrains_subway_wagon_line0_.png differ diff --git a/advtrains_train_subway/textures/advtrains_subway_wagon_line1.png b/advtrains_train_subway/textures/advtrains_subway_wagon_line1.png index ad596df..fe35193 100644 Binary files a/advtrains_train_subway/textures/advtrains_subway_wagon_line1.png and b/advtrains_train_subway/textures/advtrains_subway_wagon_line1.png differ diff --git a/advtrains_train_subway/textures/advtrains_subway_wagon_line1_.png b/advtrains_train_subway/textures/advtrains_subway_wagon_line1_.png new file mode 100644 index 0000000..d731f68 Binary files /dev/null and b/advtrains_train_subway/textures/advtrains_subway_wagon_line1_.png differ diff --git a/advtrains_train_subway/textures/advtrains_subway_wagon_line2.png b/advtrains_train_subway/textures/advtrains_subway_wagon_line2.png index 7dbe679..78b4f80 100644 Binary files a/advtrains_train_subway/textures/advtrains_subway_wagon_line2.png and b/advtrains_train_subway/textures/advtrains_subway_wagon_line2.png differ diff --git a/advtrains_train_subway/textures/advtrains_subway_wagon_line2_.png b/advtrains_train_subway/textures/advtrains_subway_wagon_line2_.png new file mode 100644 index 0000000..42d094c Binary files /dev/null and b/advtrains_train_subway/textures/advtrains_subway_wagon_line2_.png differ diff --git a/advtrains_train_subway/textures/advtrains_subway_wagon_line3.png b/advtrains_train_subway/textures/advtrains_subway_wagon_line3.png index 3ccb6fb..19e3af1 100644 Binary files a/advtrains_train_subway/textures/advtrains_subway_wagon_line3.png and b/advtrains_train_subway/textures/advtrains_subway_wagon_line3.png differ diff --git a/advtrains_train_subway/textures/advtrains_subway_wagon_line3_.png b/advtrains_train_subway/textures/advtrains_subway_wagon_line3_.png new file mode 100644 index 0000000..608206c Binary files /dev/null and b/advtrains_train_subway/textures/advtrains_subway_wagon_line3_.png differ diff --git a/advtrains_train_subway/textures/advtrains_subway_wagon_line4.png b/advtrains_train_subway/textures/advtrains_subway_wagon_line4.png index 67d7def..eb8dc39 100644 Binary files a/advtrains_train_subway/textures/advtrains_subway_wagon_line4.png and b/advtrains_train_subway/textures/advtrains_subway_wagon_line4.png differ diff --git a/advtrains_train_subway/textures/advtrains_subway_wagon_line4_.png b/advtrains_train_subway/textures/advtrains_subway_wagon_line4_.png new file mode 100644 index 0000000..1fbdbf0 Binary files /dev/null and b/advtrains_train_subway/textures/advtrains_subway_wagon_line4_.png differ diff --git a/advtrains_train_subway/textures/advtrains_subway_wagon_line5.png b/advtrains_train_subway/textures/advtrains_subway_wagon_line5.png index 1af9e9c..a1a50d9 100644 Binary files a/advtrains_train_subway/textures/advtrains_subway_wagon_line5.png and b/advtrains_train_subway/textures/advtrains_subway_wagon_line5.png differ diff --git a/advtrains_train_subway/textures/advtrains_subway_wagon_line5_.png b/advtrains_train_subway/textures/advtrains_subway_wagon_line5_.png new file mode 100644 index 0000000..5e78cc2 Binary files /dev/null and b/advtrains_train_subway/textures/advtrains_subway_wagon_line5_.png differ diff --git a/advtrains_train_subway/textures/advtrains_subway_wagon_line6.png b/advtrains_train_subway/textures/advtrains_subway_wagon_line6.png index e48c6ed..f804880 100644 Binary files a/advtrains_train_subway/textures/advtrains_subway_wagon_line6.png and b/advtrains_train_subway/textures/advtrains_subway_wagon_line6.png differ diff --git a/advtrains_train_subway/textures/advtrains_subway_wagon_line6_.png b/advtrains_train_subway/textures/advtrains_subway_wagon_line6_.png new file mode 100644 index 0000000..9e11041 Binary files /dev/null and b/advtrains_train_subway/textures/advtrains_subway_wagon_line6_.png differ diff --git a/advtrains_train_subway/textures/advtrains_subway_wagon_line7.png b/advtrains_train_subway/textures/advtrains_subway_wagon_line7.png index 8ed26e7..0587719 100644 Binary files a/advtrains_train_subway/textures/advtrains_subway_wagon_line7.png and b/advtrains_train_subway/textures/advtrains_subway_wagon_line7.png differ diff --git a/advtrains_train_subway/textures/advtrains_subway_wagon_line7_.png b/advtrains_train_subway/textures/advtrains_subway_wagon_line7_.png new file mode 100644 index 0000000..edfe9b1 Binary files /dev/null and b/advtrains_train_subway/textures/advtrains_subway_wagon_line7_.png differ diff --git a/advtrains_train_subway/textures/advtrains_subway_wagon_line8.png b/advtrains_train_subway/textures/advtrains_subway_wagon_line8.png index 4e19353..45de3bd 100644 Binary files a/advtrains_train_subway/textures/advtrains_subway_wagon_line8.png and b/advtrains_train_subway/textures/advtrains_subway_wagon_line8.png differ diff --git a/advtrains_train_subway/textures/advtrains_subway_wagon_line8_.png b/advtrains_train_subway/textures/advtrains_subway_wagon_line8_.png new file mode 100644 index 0000000..efd125b Binary files /dev/null and b/advtrains_train_subway/textures/advtrains_subway_wagon_line8_.png differ diff --git a/advtrains_train_subway/textures/advtrains_subway_wagon_line9.png b/advtrains_train_subway/textures/advtrains_subway_wagon_line9.png index a79d7a7..a5dfd1d 100644 Binary files a/advtrains_train_subway/textures/advtrains_subway_wagon_line9.png and b/advtrains_train_subway/textures/advtrains_subway_wagon_line9.png differ diff --git a/advtrains_train_subway/textures/advtrains_subway_wagon_line9_.png b/advtrains_train_subway/textures/advtrains_subway_wagon_line9_.png new file mode 100644 index 0000000..09a3c7f Binary files /dev/null and b/advtrains_train_subway/textures/advtrains_subway_wagon_line9_.png differ diff --git a/advtrains_train_subway/textures/advtrains_subway_wagon_lineX.png b/advtrains_train_subway/textures/advtrains_subway_wagon_lineX.png index 6f74877..4b142c1 100644 Binary files a/advtrains_train_subway/textures/advtrains_subway_wagon_lineX.png and b/advtrains_train_subway/textures/advtrains_subway_wagon_lineX.png differ diff --git a/advtrains_train_subway/textures/advtrains_subway_wagon_line_0.png b/advtrains_train_subway/textures/advtrains_subway_wagon_line_0.png new file mode 100644 index 0000000..6dbece0 Binary files /dev/null and b/advtrains_train_subway/textures/advtrains_subway_wagon_line_0.png differ diff --git a/advtrains_train_subway/textures/advtrains_subway_wagon_line_1.png b/advtrains_train_subway/textures/advtrains_subway_wagon_line_1.png new file mode 100644 index 0000000..e65cfe0 Binary files /dev/null and b/advtrains_train_subway/textures/advtrains_subway_wagon_line_1.png differ diff --git a/advtrains_train_subway/textures/advtrains_subway_wagon_line_2.png b/advtrains_train_subway/textures/advtrains_subway_wagon_line_2.png new file mode 100644 index 0000000..6064893 Binary files /dev/null and b/advtrains_train_subway/textures/advtrains_subway_wagon_line_2.png differ diff --git a/advtrains_train_subway/textures/advtrains_subway_wagon_line_3.png b/advtrains_train_subway/textures/advtrains_subway_wagon_line_3.png new file mode 100644 index 0000000..a51e943 Binary files /dev/null and b/advtrains_train_subway/textures/advtrains_subway_wagon_line_3.png differ diff --git a/advtrains_train_subway/textures/advtrains_subway_wagon_line_4.png b/advtrains_train_subway/textures/advtrains_subway_wagon_line_4.png new file mode 100644 index 0000000..73ea576 Binary files /dev/null and b/advtrains_train_subway/textures/advtrains_subway_wagon_line_4.png differ diff --git a/advtrains_train_subway/textures/advtrains_subway_wagon_line_5.png b/advtrains_train_subway/textures/advtrains_subway_wagon_line_5.png new file mode 100644 index 0000000..c278680 Binary files /dev/null and b/advtrains_train_subway/textures/advtrains_subway_wagon_line_5.png differ diff --git a/advtrains_train_subway/textures/advtrains_subway_wagon_line_6.png b/advtrains_train_subway/textures/advtrains_subway_wagon_line_6.png new file mode 100644 index 0000000..c4e6bcb Binary files /dev/null and b/advtrains_train_subway/textures/advtrains_subway_wagon_line_6.png differ diff --git a/advtrains_train_subway/textures/advtrains_subway_wagon_line_7.png b/advtrains_train_subway/textures/advtrains_subway_wagon_line_7.png new file mode 100644 index 0000000..afe0814 Binary files /dev/null and b/advtrains_train_subway/textures/advtrains_subway_wagon_line_7.png differ diff --git a/advtrains_train_subway/textures/advtrains_subway_wagon_line_8.png b/advtrains_train_subway/textures/advtrains_subway_wagon_line_8.png new file mode 100644 index 0000000..56108a0 Binary files /dev/null and b/advtrains_train_subway/textures/advtrains_subway_wagon_line_8.png differ diff --git a/advtrains_train_subway/textures/advtrains_subway_wagon_line_9.png b/advtrains_train_subway/textures/advtrains_subway_wagon_line_9.png new file mode 100644 index 0000000..6d5b411 Binary files /dev/null and b/advtrains_train_subway/textures/advtrains_subway_wagon_line_9.png differ diff --git a/advtrains_train_subway/textures/advtrains_subway_wagon_livery.png b/advtrains_train_subway/textures/advtrains_subway_wagon_livery.png new file mode 100644 index 0000000..2702871 Binary files /dev/null and b/advtrains_train_subway/textures/advtrains_subway_wagon_livery.png differ