走行位置のUIに種別や内子経由のラインを追加、寝台特急をピンクに変更

This commit is contained in:
harukin-expo-dev-env 2025-07-08 13:28:00 +00:00
parent d586bc562f
commit 934f9ce2c2
2 changed files with 52 additions and 5 deletions

View File

@ -5,7 +5,7 @@ type nameString =
| "SPCL" | "SPCL"
| "Normal" | "Normal"
| string; | string;
type colorString = "aqua" | "red" | "#297bff" | "white"; type colorString = "aqua" | "red" | "#297bff" | "white" | "pink";
type trainTypeString = type trainTypeString =
| "快速" | "快速"
| "特急" | "特急"
@ -28,7 +28,7 @@ export const getTrainType: getTrainType = (nameString) => {
case "LTDEXP": case "LTDEXP":
return { color: "red", name: "特急", data: "express" }; return { color: "red", name: "特急", data: "express" };
case "NightLTDEXP": case "NightLTDEXP":
return { color: "red", name: "寝台特急", data: "express" }; return { color: "pink", name: "寝台特急", data: "express" };
case "SPCL": case "SPCL":
case "SPCL_Rapid": case "SPCL_Rapid":
case "SPCL_EXP": case "SPCL_EXP":

View File

@ -1055,6 +1055,8 @@ export const injectJavascriptData: InjectJavascriptData = (
const nameReplace = (,,,hasProblem) =>{ const nameReplace = (,,,hasProblem) =>{
let isWanman = false; let isWanman = false;
let trainName = ""; let trainName = "";
let trainType = "";
let trainTypeColor = "black";
let viaData = ""; let viaData = "";
let ToData = ""; let ToData = "";
let TrainNumber = ; let TrainNumber = ;
@ -1262,7 +1264,43 @@ export const injectJavascriptData: InjectJavascriptData = (
getThrew(); getThrew();
if(trainDataList.find(e => e.id === ) !== undefined){ if(trainDataList.find(e => e.id === ) !== undefined){
const data = trainDataList.find(e => e.id === ); const data = trainDataList.find(e => e.id === );
//{id,isWanman,trainName,viaData,ToData} //{id,isWanman,trainName,viaData,ToData,TrainNumber,JRF,type,infoUrl,trainNumDistance,info,infogram}
trainType = (()=>{
switch(data.type){
case "Normal":
trainTypeColor = "black";
return "普通";
case "OneMan":
trainTypeColor = "black";
return "普通";
case "Freight":
trainTypeColor = "black";
return "貨物";
case "SPCL_Normal":
trainTypeColor = "#297bff";
return "臨時";
case "SPCL_Rapid":
trainTypeColor = "#297bff";
return "臨時快速";
case "SPCL_LTDEXP":
trainTypeColor = "#297bff";
return "臨時特急";
case "LTDEXP":
trainTypeColor = "red";
return "特急";
case "NightLTDEXP":
trainTypeColor = "rgb(211, 0, 176)";
return "寝台特急";
case "OneManRapid":
trainTypeColor = "rgba(0, 140, 255, 1)";
return "快速";
case "Rapid":
trainTypeColor = "rgba(0, 140, 255, 1)";
return "快速";
default:
return "";
}
})();
isWanman = data.isWanman; isWanman = data.isWanman;
if(data.trainName != ""){ if(data.trainName != ""){
trainName = data.trainName; trainName = data.trainName;
@ -1293,16 +1331,25 @@ export const injectJavascriptData: InjectJavascriptData = (
}); });
let getColors = []; let getColors = [];
if(stationLines.length === 0){ if(stationLines.length === 0){
getColors = ["#000"]; getColors = ["rgba(97, 96, 96, 0.81)"];
}else{ }else{
getColors = stationLines.map(e => GetLineBarColor(e)); getColors = stationLines.map(e => GetLineBarColor(e));
} }
let yosan2Color = undefined;
if(viaData == "(内子経由)"){
yosan2Color ="#F5AC13";
}
else if(viaData == "(海経由)"){
yosan2Color = "#9AA7D7";
}
const gradient = getColors.length > 1 ? "linear-gradient(130deg, " + getColors[0] + " 0%, "+ getColors[0]+"50%, "+ getColors[1]+"50%, " + getColors[1] + " 100%)" : getColors[0]; const gradient = getColors.length > 1 ? "linear-gradient(130deg, " + getColors[0] + " 0%, "+ getColors[0]+"50%, "+ getColors[1]+"50%, " + getColors[1] + " 100%)" : getColors[0];
.insertAdjacentHTML('beforebegin', "<p style='font-size:6px;padding:0;color:black;text-align:center;'>" + TrainNumber + (JRF ? "":"レ") + "</p>"); .insertAdjacentHTML('beforebegin', "<p style='font-size:6px;padding:0;color:black;text-align:center;'>" + TrainNumber + (JRF ? "":"レ") + "</p>");
.insertAdjacentHTML('beforebegin', "<p style='font-size:8px;font-weight:bold;padding:0;color: black;text-align:center;'>" + (isWanman ? "ワンマン " : "") + "</p>"); .insertAdjacentHTML('beforebegin', "<p style='font-size:8px;font-weight:bold;padding:0;color: black;text-align:center;'>" + (isWanman ? "ワンマン " : "") + "</p>");
.insertAdjacentHTML('beforebegin', "<p style='font-size:6px;font-weight:bold;padding:0;color: black;text-align:center;'>" + viaData + "</p>"); .insertAdjacentHTML('beforebegin', "<p style='font-size:6px;font-weight:bold;padding:0;color: black;text-align:center;border-bottom-style:solid;border-bottom-width: "+(!!yosan2Color ? "2px" : "0px")+";border-color:" + yosan2Color + "'>" + viaData + "</p>");
.insertAdjacentHTML('beforebegin', "<p style='font-size:8px;font-weight:bold;padding:0;color: black;text-align:center;'>" + trainName + "</p>"); .insertAdjacentHTML('beforebegin', "<p style='font-size:8px;font-weight:bold;padding:0;color: black;text-align:center;'>" + trainName + "</p>");
.insertAdjacentHTML('beforebegin', "<div style='width:100%;background:" + gradient + ";'><p style='font-size:10px;font-weight:bold;padding:0;margin:0;color:white;align-items:center;align-content:center;text-align:center;text-shadow:1px 1px 0px #00000030, -1px -1px 0px #00000030,-1px 1px 0px #00000030, 1px -1px 0px #00000030,1px 0px 0px #00000030, -1px 0px 0px #00000030,0px 1px 0px #00000030, 0px -1px 0px #00000030;'>" + (ToData ? ToData + "行" : ToData) + "</p></div>"); .insertAdjacentHTML('beforebegin', "<div style='width:100%;background:" + gradient + ";'><p style='font-size:10px;font-weight:bold;padding:0;margin:0;color:white;align-items:center;align-content:center;text-align:center;text-shadow:1px 1px 0px #00000030, -1px -1px 0px #00000030,-1px 1px 0px #00000030, 1px -1px 0px #00000030,1px 0px 0px #00000030, -1px 0px 0px #00000030,0px 1px 0px #00000030, 0px -1px 0px #00000030;'>" + (ToData ? ToData + "行" : ToData) + "</p></div>");
.insertAdjacentHTML('beforebegin', "<div style='width:100%;background:" + trainTypeColor + ";'><p style='font-size:10px;font-weight:bold;font-style:italic;padding:0;color: white;text-align:center;'>" + trainType + "</p></div>");
.insertAdjacentHTML('beforebegin', "<p style='font-size:8px;font-weight:bold;padding:0;text-align:center;color: "+(hasProblem ? "red":"black")+";'>" + (hasProblem ? "‼️停止中‼️" : "") + "</p>"); .insertAdjacentHTML('beforebegin', "<p style='font-size:8px;font-weight:bold;padding:0;text-align:center;color: "+(hasProblem ? "red":"black")+";'>" + (hasProblem ? "‼️停止中‼️" : "") + "</p>");
`: ` `: `
.insertAdjacentHTML('beforebegin', "<p style='font-size:10px;font-weight:bold;padding:0;color: black;'>" + returnText1 + "</p>"); .insertAdjacentHTML('beforebegin', "<p style='font-size:10px;font-weight:bold;padding:0;color: black;'>" + returnText1 + "</p>");