【付费】OMSI 2北京昌平游戏地图模组V1.0 正式发表
模载联合支援站
 English
发新主题

[教程] 解決「MAN NG272(官方铰链车)中国式开门」補丁造成下車提示燈不亮之問題

解決「MAN NG272(官方铰链车)中国式开门」補丁造成下車提示燈不亮之問題


【前言】
由 电击小子 提供之 MAN NG272(官方铰链车)中国式开门 補丁
安裝後儀錶板上的乘客下車提示燈無法正常運作,
本文提供一經本人嘗試後可成功使其正常運作之解決方案,即替換補丁文件裡的部分代碼。
因補丁檔案版權仍歸原作者所有,請有需要的人自行下載補丁,並參考以下內容修改文件,以解決上述問題。
【正文】
請開啟補丁文件並找到下列代碼:


原始碼:
{macro:Door_Frame}
	(M.L.Door0_Calc)
	(M.L.Door1_Calc)
	(M.L.DoorAftCalc)
	(M.L.Door2_Calc)
	(M.L.Door3_Calc)
	(M.L.Door4_Calc)
	(M.L.Door5_Calc)
	
	(L.L.door_0) 0.9 > (S.L.PAX_Entry0_Open)
	(L.L.door_1) 0.9 > (S.L.PAX_Entry1_Open)	
	(L.L.door_2) 0.9 > (L.L.door_3) 0.9 > && (S.L.PAX_Exit0_Open) (S.L.PAX_Exit1_Open) (S.L.PAX_Entry2_Open) (S.L.PAX_Entry3_Open)
	(L.L.door_4) 0.9 > (L.L.door_5) 0.9 > && (S.L.PAX_Exit2_Open) (S.L.PAX_Exit3_Open) (S.L.PAX_Entry4_Open) (S.L.PAX_Entry5_Open)

'	"Dauerfeuer"-Haltewunsch er Kinderwagenschalter (macht genau dasselbe wie der "trigger:int_haltewunsch"):
	(L.L.door_handsteuerung) (L.L.door_haltewunsch_knopfdruck) ||
	{if}
		1 (S.L.haltewunsch)
	{endif}

'	Setzen der Haltestellenbremse erst bei Stillstand des Busses:
	(L.L.bremse_halte_sw) (L.L.door_20h_sw) ||
	(L.L.bremse_halte) ! (L.L.Velocity) (C.L.Door_Bremse_Halte_MaxKMH) < && &&
	{if}
		(L.L.elec_busbar_main)
		{if}
			(T.L.ev_haltebremse_an)		
			1 (S.L.bremse_halte)
		{endif}
	{endif}

'	Anhand dieser Bedingungen kann nun die Automatikt ge鐪fnet werden:
	(M.L.DoorAft_Open)

'	Tfreigabekriterium

	(L.L.bremse_halte_sw) (L.L.bremse_halte) && (S.L.door_freigabe)

'	Haltewunschlampe:
	(L.L.haltewunsch) (L.L.door_2) 0.2 < (L.L.elec_busbar_main) && &&
	{if}
		1 (S.L.haltewunschlampe)
	{else}
		0 (S.L.haltewunschlampe) (S.L.haltewunsch)
	{endif}

'	Abfall des Kinderwagenwunsch-Relais bei fehlender Stromversorgung:

	(L.L.elec_busbar_main) 0 = 
	{if}
		0 (S.L.door_kinderwagenwunsch)
	{endif}

'	Beleuchtung der Einstiege

	(L.L.elec_busbar_main)
	{if}
		(L.L.door_0) 0.1 > (L.L.door_1) 0.1 > || (S.L.door_light_1)
		(L.L.door_2) 0.1 > (L.L.door_3) 0.1 > || (S.L.door_light_2)
                (L.L.door_4) 0.1 > (L.L.door_5) 0.1 > || (S.L.door_light_3)
	{else}
		0 (S.L.door_light_1) (S.L.door_light_2) (S.L.door_light_3)
	{endif}

'	Druckabh鄚gige Tgeschwindigkeit
	
	(C.L.door_druckluft)
	{if}
		(L.L.doorMaxSpeed_0_norm) (L.L.bremse_p_Tank04) 100000 - 850000 / (S.L.doorMaxSpeed_0)
		(L.L.doorMaxSpeed_1_norm) (L.L.bremse_p_Tank04) 100000 - 850000 / (S.L.doorMaxSpeed_1)
		(L.L.doorMaxSpeed_2_norm) (L.L.bremse_p_Tank04) 100000 - 850000 / (S.L.doorMaxSpeed_2)
		(L.L.doorMaxSpeed_3_norm) (L.L.bremse_p_Tank04) 100000 - 850000 / (S.L.doorMaxSpeed_3)
		(L.L.doorMaxSpeed_4_norm) (L.L.bremse_p_Tank04) 100000 - 850000 / (S.L.doorMaxSpeed_4)
		(L.L.doorMaxSpeed_5_norm) (L.L.bremse_p_Tank04) 100000 - 850000 / (S.L.doorMaxSpeed_5)
	{endif}

替換為以下代碼(可從原車提供的文件裡找到):


原始碼:
{macro:Door_Frame}

'Anforderung mit neuen Variablen:

	(L.L.haltewunsch)   (L.L.PAX_Exit0_Req) (L.L.PAX_Exit1_Req) || || (S.L.haltewunsch)
	(L.L.haltewunsch_2) (L.L.PAX_Exit2_Req) (L.L.PAX_Exit3_Req) || || (S.L.haltewunsch_2)

'Bei E-Ten die "active"-Variable der Entriegelung nachfren:
	(C.L.electric_doors)
	{if}
		(L.L.doorEntriegelung_01) (L.L.doorEntriegelung_E_active_01) s0 (L.L.elec_busbar_avail) (C.L.elec_busbar_minV) > ! && || s1
		l0 = !
		{if}
			l1
			{if}
				(T.L.ev_doorEntriegelung_01_active_on)
				0 (S.L.doorEntriegelung_doorActive_01)
			{else}
				(T.L.ev_doorEntriegelung_01_active_off)
			{endif}
		{endif}
		l1 (S.L.doorEntriegelung_E_active_01)

		(L.L.doorEntriegelung_23) (L.L.doorEntriegelung_E_active_23) s0 (L.L.elec_busbar_avail) (C.L.elec_busbar_minV) > ! && || s1
		l0 = !
		{if}
			l1
			{if}
				(T.L.ev_doorEntriegelung_23_active_on)
				0 (S.L.doorEntriegelung_doorActive_23)
			{else}
				(T.L.ev_doorEntriegelung_23_active_off)
			{endif}
		{endif}
		l1 (S.L.doorEntriegelung_E_active_23)

		(L.L.doorEntriegelung_45) (L.L.doorEntriegelung_E_active_45) s0 (L.L.elec_busbar_avail) (C.L.elec_busbar_minV) > ! && || s1
		l0 = !
		{if}
			l1
			{if}
				(T.L.ev_doorEntriegelung_45_active_on)
				0 (S.L.doorEntriegelung_doorActive_45)
			{else}
				(T.L.ev_doorEntriegelung_45_active_off)
			{endif}
		{endif}
		l1 (S.L.doorEntriegelung_E_active_45)
	{endif}
	


	(M.L.Door0_Calc)
	(M.L.Door1_Calc)
	(M.L.DoorAftCalc)
	(M.L.Door2_Calc)
	(M.L.Door3_Calc)
	(M.L.Door4_Calc)
	(M.L.Door5_Calc)

	0
	(S.L.doorDragAcc_0)
	(S.L.doorDragAcc_1)
	(S.L.doorDragAcc_2)
	(S.L.doorDragAcc_3)
	(S.L.doorDragAcc_4)
	(S.L.doorDragAcc_5)

	(L.L.door_0) 0.9 > (S.L.PAX_Entry0_Open)
	(L.L.door_1) 0.9 > (S.L.PAX_Entry1_Open)	
	(L.L.door_2) 0.9 > (L.L.door_3) 0.9 > && (S.L.PAX_Exit0_Open) (S.L.PAX_Exit1_Open) (S.L.PAX_Entry2_Open) (S.L.PAX_Entry3_Open)
	(L.L.door_4) 0.9 > (L.L.door_5) 0.9 > && (S.L.PAX_Exit2_Open) (S.L.PAX_Exit3_Open) (S.L.PAX_Entry4_Open) (S.L.PAX_Entry5_Open)

'	"Dauerfeuer"-Haltewunsch er Kinderwagenschalter (macht genau dasselbe wie der "trigger:int_haltewunsch"):
	(L.L.door_handsteuerung) (L.L.door_haltewunsch_knopfdruck) ||
	{if}
		1 (S.L.haltewunsch)
	{endif}

'	Au絽nttaster werden von Fahrg酲ten benutzt:

	(L.L.door_freigabe) (L.L.PAX_Entry2_Req) (L.L.PAX_Entry3_Req) || &&
	{if}
		1 (S.L.haltewunsch)
	{endif}

	(L.L.door_freigabe) (L.L.PAX_Entry4_Req) (L.L.PAX_Entry5_Req) || &&
	{if}
		1 (S.L.haltewunsch_2)
	{endif}

'	Setzen der Haltestellenbremse erst bei Stillstand des Busses:
	(L.L.bremse_halte_sw) (L.L.door_20h_sw) (L.L.door_hstbremse_knickschutz) || ||
	(L.L.bremse_halte) ! (L.L.Velocity) (C.L.Door_Bremse_Halte_MaxKMH) < && &&
	{if}
		(L.L.elec_busbar_main) (C.L.elec_busbar_minV) >
		{if}
			(T.L.ev_haltebremse_an)		
			1 (S.L.bremse_halte)
		{endif}
	{endif}

'	Anhand dieser Bedingungen kann nun die Automatikt ge鐪fnet werden:
	(C.L.door_ManBackDoorFrontDoorCombined) !
	{if}
		(M.L.DoorMid_Open)
	{endif}

	(M.L.DoorAft_Open)

'	Tfreigabekriterium

	(L.L.bremse_halte_sw) (L.L.bremse_halte) && (S.L.door_freigabe)

'	Haltewunschlampe:
	(L.L.haltewunsch)
			(L.L.door_0) 0.2 < (C.L.door_stop_request_killed_by_front_door) ! ||
			(L.L.door_1) 0.2 < (L.L.door_20h_sw) ! || &&
			(L.L.door_2) 0.2 < &&
			(L.L.elec_busbar_main) (C.L.elec_busbar_minV) > && &&
	{if}
		1 (S.L.haltewunschlampe)
	{else}
		0 (S.L.haltewunschlampe) (S.L.haltewunsch)
	{endif}

	(L.L.haltewunsch_2)
			(L.L.door_0) 0.2 < (C.L.door_stop_request_killed_by_front_door) ! ||
			(L.L.door_1) 0.2 < (L.L.door_20h_sw) ! || &&
			(L.L.door_4) 0.2 < &&
			(L.L.elec_busbar_main) (C.L.elec_busbar_minV) > && &&
	{if}
		1 (S.L.haltewunschlampe_2)
	{else}
		0 (S.L.haltewunschlampe_2) (S.L.haltewunsch_2)
	{endif}

	(L.L.haltewunschlampe) (L.L.haltewunschlampe_2) || (S.L.haltewunschlampe_all)

'	Bing:

	(L.L.haltewunsch) (L.L.haltewunsch_2) || (L.L.prev_haltewunsch) ! && (L.L.elec_busbar_main) (C.L.elec_busbar_minV) > &&
	{if}
		(T.L.ev_stop)
	{endif}		

	(L.L.haltewunsch) (L.L.haltewunsch_2) || (S.L.prev_haltewunsch)

'	Abfall des Kinderwagenwunsch-Relais bei fehlender Stromversorgung:

	(L.L.elec_busbar_main) (C.L.elec_busbar_minV) <
	{if}
		0 (S.L.door_kinderwagenwunsch)
	{endif}

'	Beleuchtung der Einstiege

'	Ausgelagert in Lights-Script


經測試無報錯,若修改成功或出現報錯等其他問題都歡迎回報。


(補充:因代碼排版有誤,請下載附件以正確替換,還請諒解。)

code.rar (1.47 KB)


[ 本帖最後由 st940057 於 2017-3-11 23:45 編輯 ]
本帖最近评分记录
  • justinyau36模载通汇+4 2017-3-12 00:22 感謝分享

🎃 使用 Win11 发送


感谢楼主分享

🎃 使用 Win10 发送


感谢楼主分享

🎃 使用 iPhone 发送


感谢楼主分享