mirror of
				https://github.com/coop-deluxe/sm64coopdx.git
				synced 2025-10-30 08:01:01 +00:00 
			
		
		
		
	Add automatic toggle (#707)
This commit is contained in:
		
							parent
							
								
									f9b6fba0b5
								
							
						
					
					
						commit
						14f98e4b30
					
				
					 16 changed files with 51 additions and 6 deletions
				
			
		|  | @ -75,6 +75,9 @@ FREE_CAMERA_USE_DPAD = "Chování DPad" | |||
| FREE_CAMERA_COLLISION = "Kolize kamery" | ||||
| ROMHACK_CAMERA_TITLE = "ROMHACK\KAMERA" | ||||
| ROMHACK_CAMERA = "Romhack kamera" | ||||
| ROMHACK_CAMERA_AUTOMATIC = "Automaticky" | ||||
| ROMHACK_CAMERA_ON = "Zapnuto" | ||||
| ROMHACK_CAMERA_Off = "Vypnuto" | ||||
| ROMHACK_CAMERA_IN_BOWSER = "Použít v soubojích s Bowserem" | ||||
| ROMHACK_CAMERA_COLLISION = "Kolize kamery" | ||||
| ROMHACK_CAMERA_L_CENTERING = "L Centrování" | ||||
|  |  | |||
|  | @ -75,6 +75,9 @@ FREE_CAMERA_USE_DPAD = "DPad-gedrag" | |||
| FREE_CAMERA_COLLISION = "Camera-botsingen" | ||||
| ROMHACK_CAMERA_TITLE = "ROMHACK\nCAMERA" | ||||
| ROMHACK_CAMERA = "Romhack Camera" | ||||
| ROMHACK_CAMERA_AUTOMATIC = "Automatisch" | ||||
| ROMHACK_CAMERA_ON = "Aan" | ||||
| ROMHACK_CAMERA_Off = "Uit" | ||||
| ROMHACK_CAMERA_IN_BOWSER = "Gebruik in Bowser-gevechten" | ||||
| ROMHACK_CAMERA_COLLISION = "Camera botsingen" | ||||
| ROMHACK_CAMERA_L_CENTERING = "L-centrering" | ||||
|  |  | |||
|  | @ -75,6 +75,9 @@ FREE_CAMERA_USE_DPAD = "DPad Behavior" | |||
| FREE_CAMERA_COLLISION = "Camera Collisions" | ||||
| ROMHACK_CAMERA_TITLE = "ROMHACK\nCAMERA" | ||||
| ROMHACK_CAMERA = "Romhack Camera" | ||||
| ROMHACK_CAMERA_AUTOMATIC = "Automatic" | ||||
| ROMHACK_CAMERA_ON = "On" | ||||
| ROMHACK_CAMERA_Off = "Off" | ||||
| ROMHACK_CAMERA_IN_BOWSER = "Use in Bowser fights" | ||||
| ROMHACK_CAMERA_COLLISION = "Camera Collisions" | ||||
| ROMHACK_CAMERA_L_CENTERING = "L Centering" | ||||
|  |  | |||
|  | @ -75,6 +75,9 @@ FREE_CAMERA_USE_DPAD = "Comportement du DPAD" | |||
| FREE_CAMERA_COLLISION = "Collisions de la caméra" | ||||
| ROMHACK_CAMERA_TITLE = "CAMÉRA\nROMHACK" | ||||
| ROMHACK_CAMERA = "Caméra Romhack" | ||||
| ROMHACK_CAMERA_AUTOMATIC = "Automatique" | ||||
| ROMHACK_CAMERA_ON = "Activé" | ||||
| ROMHACK_CAMERA_Off = "Désactivé" | ||||
| ROMHACK_CAMERA_IN_BOWSER = "Utiliser dans les combats contre Bowser" | ||||
| ROMHACK_CAMERA_COLLISION = "Collisions de caméra" | ||||
| ROMHACK_CAMERA_L_CENTERING = "Centrage en L" | ||||
|  |  | |||
|  | @ -75,6 +75,9 @@ FREE_CAMERA_USE_DPAD = "DPad-Verhalten" | |||
| FREE_CAMERA_COLLISION = "Kamerakollisionen" | ||||
| ROMHACK_CAMERA_TITLE = "ROMHACK\nKAMERA" | ||||
| ROMHACK_CAMERA = "Romhack-Kamera" | ||||
| ROMHACK_CAMERA_AUTOMATIC = "Automatisch" | ||||
| ROMHACK_CAMERA_ON = "Ein" | ||||
| ROMHACK_CAMERA_Off = "Aus" | ||||
| ROMHACK_CAMERA_IN_BOWSER = "In Bowser-Kämpfen verwenden" | ||||
| ROMHACK_CAMERA_COLLISION = "Kamerakollisionen" | ||||
| ROMHACK_CAMERA_L_CENTERING = "L-Zentrierung" | ||||
|  |  | |||
|  | @ -75,6 +75,9 @@ FREE_CAMERA_USE_DPAD = "Comportamento del DPad" | |||
| FREE_CAMERA_COLLISION = "Collisioni della telecamera" | ||||
| ROMHACK_CAMERA_TITLE = "TELECAMERA\nROMHACK" | ||||
| ROMHACK_CAMERA = "Telecamera Romhack" | ||||
| ROMHACK_CAMERA_AUTOMATIC = "Automatico" | ||||
| ROMHACK_CAMERA_ON = "Acceso" | ||||
| ROMHACK_CAMERA_Off = "Spento" | ||||
| ROMHACK_CAMERA_IN_BOWSER = "Da usare nei combattimenti con Bowser" | ||||
| ROMHACK_CAMERA_COLLISION = "Collisioni della telecamera" | ||||
| ROMHACK_CAMERA_L_CENTERING = "Centratura a L" | ||||
|  |  | |||
|  | @ -75,6 +75,9 @@ FREE_CAMERA_USE_DPAD = "DPad の動作" | |||
| FREE_CAMERA_COLLISION = "カメラの衝突" | ||||
| ROMHACK_CAMERA_TITLE = "ROMHACK\nCAMERA" | ||||
| ROMHACK_CAMERA = "ロムハックカメラ" | ||||
| ROMHACK_CAMERA_AUTOMATIC = "自動" | ||||
| ROMHACK_CAMERA_ON = "オン" | ||||
| ROMHACK_CAMERA_OFF = "オフ" | ||||
| ROMHACK_CAMERA_IN_BOWSER = "クッパ戦で使用" | ||||
| ROMHACK_CAMERA_COLLISION = "カメラの衝突" | ||||
| ROMHACK_CAMERA_L_CENTERING = "Lセンタリング" | ||||
|  |  | |||
|  | @ -75,6 +75,9 @@ FREE_CAMERA_USE_DPAD = "Zachowanie DPada" | |||
| FREE_CAMERA_COLLISION = "Kolizje kamery" | ||||
| ROMHACK_CAMERA_TITLE = "KAMERA\nROMHACK" | ||||
| ROMHACK_CAMERA = "Kamera Romhack" | ||||
| ROMHACK_CAMERA_AUTOMATIC = "Automatyczny" | ||||
| ROMHACK_CAMERA_ON = "Włączony" | ||||
| ROMHACK_CAMERA_Off = "Wył" | ||||
| ROMHACK_CAMERA_IN_BOWSER = "Używaj w walkach z Bowserem" | ||||
| ROMHACK_CAMERA_COLLISION = "Kolizje kamery" | ||||
| ROMHACK_CAMERA_L_CENTERING = "Wyśrodkowanie L" | ||||
|  |  | |||
|  | @ -75,6 +75,9 @@ FREE_CAMERA_USE_DPAD = "Usar D-Pad" | |||
| FREE_CAMERA_COLLISION = "Colisões da câmera" | ||||
| ROMHACK_CAMERA_TITLE = "CÂMERA\nROMHACK" | ||||
| ROMHACK_CAMERA = "Câmera Romhack" | ||||
| ROMHACK_CAMERA_AUTOMATIC = "Automático" | ||||
| ROMHACK_CAMERA_ON = "Ligada" | ||||
| ROMHACK_CAMERA_Off = "Desligada" | ||||
| ROMHACK_CAMERA_IN_BOWSER = "Usar em lutas com o Bowser" | ||||
| ROMHACK_CAMERA_COLLISION = "Colisões da câmera" | ||||
| ROMHACK_CAMERA_L_CENTERING = "Centralizar com L" | ||||
|  |  | |||
|  | @ -75,6 +75,9 @@ FREE_CAMERA_USE_DPAD = "Поведение DPad" | |||
| FREE_CAMERA_COLLISION = "Коллизии камеры" | ||||
| ROMHACK_CAMERA_TITLE = "ROMHACK\nCAMERA" | ||||
| ROMHACK_CAMERA = "Камера Romhack" | ||||
| ROMHACK_CAMERA_AUTOMATIC = "Автоматически" | ||||
| ROMHACK_CAMERA_ON = "Вкл" | ||||
| ROMHACK_CAMERA_Off = "Выключено" | ||||
| ROMHACK_CAMERA_IN_BOWSER = "Использовать в боях с Боузером" | ||||
| ROMHACK_CAMERA_COLLISION = "Коллизии камеры" | ||||
| ROMHACK_CAMERA_L_CENTERING = "Центрирование L" | ||||
|  |  | |||
|  | @ -75,6 +75,9 @@ FREE_CAMERA_USE_DPAD = "Comportamiento del DPad" | |||
| FREE_CAMERA_COLLISION = "Colisiones de la cámara" | ||||
| ROMHACK_CAMERA_TITLE = "CÁMARA\nROMHACK" | ||||
| ROMHACK_CAMERA = "Cámara Romhack" | ||||
| ROMHACK_CAMERA_AUTOMATIC = "Automática" | ||||
| ROMHACK_CAMERA_ON = "Encendida" | ||||
| ROMHACK_CAMERA_Off = "Apagada" | ||||
| ROMHACK_CAMERA_IN_BOWSER = "Usar en peleas con Bowser" | ||||
| ROMHACK_CAMERA_COLLISION = "Colisiones de cámara" | ||||
| ROMHACK_CAMERA_L_CENTERING = "Centrado L" | ||||
|  |  | |||
|  | @ -12199,8 +12199,13 @@ s32 snap_to_45_degrees(s16 angle) { | |||
| 
 | ||||
| void romhack_camera_init_settings(void) { | ||||
|     if (gRomhackCameraSettings.modsOnly) { return; } | ||||
|     enum RomhackCameraOverride override = configEnableRomhackCamera ? | ||||
|             (configRomhackCameraBowserFights ? RCO_ALL_INCLUDING_VANILLA : RCO_ALL_VANILLA_EXCEPT_BOWSER) : RCO_DISABLE; | ||||
|     enum RomhackCameraOverride override = RCO_DISABLE; | ||||
|     if (configEnableRomhackCamera == RCE_AUTOMATIC) { | ||||
|         override = configRomhackCameraBowserFights ? RCO_ALL : RCO_ALL_EXCEPT_BOWSER; | ||||
|     } else if (configEnableRomhackCamera == RCE_ON) { | ||||
|         override = configRomhackCameraBowserFights ? RCO_ALL_INCLUDING_VANILLA : RCO_ALL_VANILLA_EXCEPT_BOWSER; | ||||
|     } | ||||
|      | ||||
|     gRomhackCameraSettings.enable = override; | ||||
|     gCameraUseCourseSpecificSettings = (override == RCO_DISABLE && dynos_level_is_vanilla_level(gCurrLevelNum)); | ||||
|     gRomhackCameraSettings.collisions = configRomhackCameraHasCollision; | ||||
|  |  | |||
|  | @ -19,6 +19,12 @@ enum RomhackCameraOverride { | |||
|     RCO_DISABLE | ||||
| }; | ||||
| 
 | ||||
| enum RomhackCameraEnable { | ||||
|     RCE_AUTOMATIC, | ||||
|     RCE_ON, | ||||
|     RCE_OFF | ||||
| }; | ||||
| 
 | ||||
| struct RomhackCameraSettings { | ||||
|     enum RomhackCameraOverride enable; | ||||
|     u8 centering; | ||||
|  |  | |||
|  | @ -138,7 +138,7 @@ unsigned int configCameraAggr                     = 0; | |||
| unsigned int configCameraPan                      = 0; | ||||
| unsigned int configCameraDegrade                  = 50; // 0 - 100%
 | ||||
| // romhack camera settings
 | ||||
| bool         configEnableRomhackCamera            = false; | ||||
| unsigned int configEnableRomhackCamera            = 0; // 0 for automatic, 1 for force on, 2 for force off
 | ||||
| bool         configRomhackCameraBowserFights      = false; | ||||
| bool         configRomhackCameraHasCollision      = false; | ||||
| bool         configRomhackCameraHasCentering      = false; | ||||
|  | @ -283,7 +283,7 @@ static const struct ConfigOption options[] = { | |||
|     {.name = "bettercam_pan_level",            .type = CONFIG_TYPE_UINT, .uintValue = &configCameraPan}, | ||||
|     {.name = "bettercam_degrade",              .type = CONFIG_TYPE_UINT, .uintValue = &configCameraDegrade}, | ||||
|     // romhack camera settings
 | ||||
|     {.name = "romhackcam_enable",              .type = CONFIG_TYPE_BOOL, .boolValue = &configEnableRomhackCamera}, | ||||
|     {.name = "romhackcam_enable",              .type = CONFIG_TYPE_UINT, .uintValue = &configEnableRomhackCamera}, | ||||
|     {.name = "romhackcam_bowser",              .type = CONFIG_TYPE_BOOL, .boolValue = &configRomhackCameraBowserFights}, | ||||
|     {.name = "romhackcam_collision",           .type = CONFIG_TYPE_BOOL, .boolValue = &configRomhackCameraHasCollision}, | ||||
|     {.name = "romhackcam_centering",           .type = CONFIG_TYPE_BOOL, .boolValue = &configRomhackCameraHasCentering}, | ||||
|  |  | |||
|  | @ -90,7 +90,7 @@ extern unsigned int configCameraAggr; | |||
| extern unsigned int configCameraPan; | ||||
| extern unsigned int configCameraDegrade; | ||||
| // romhack camera settings
 | ||||
| extern bool configEnableRomhackCamera; | ||||
| extern unsigned int configEnableRomhackCamera; | ||||
| extern bool configRomhackCameraBowserFights; | ||||
| extern bool configRomhackCameraHasCollision; | ||||
| extern bool configRomhackCameraHasCentering; | ||||
|  |  | |||
|  | @ -41,7 +41,8 @@ void djui_panel_romhack_camera_create(struct DjuiBase* caller) { | |||
|     struct DjuiThreePanel* panel = djui_panel_menu_create(DLANG(CAMERA, ROMHACK_CAMERA_TITLE), false); | ||||
|     struct DjuiBase* body = djui_three_panel_get_body(panel); | ||||
|     { | ||||
|         djui_checkbox_create(body, DLANG(CAMERA, ROMHACK_CAMERA), &configEnableRomhackCamera, djui_panel_romhack_camera_value_changed); | ||||
|         char* choices[3] = { DLANG(CAMERA, ROMHACK_CAMERA_AUTOMATIC), DLANG(CAMERA, ROMHACK_CAMERA_ON), DLANG(CAMERA, ROMHACK_CAMERA_OFF) }; | ||||
|         djui_selectionbox_create(body, DLANG(CAMERA, ROMHACK_CAMERA), choices, 3, &configEnableRomhackCamera, djui_panel_romhack_camera_value_changed); | ||||
|         djui_checkbox_create(body, DLANG(CAMERA, ROMHACK_CAMERA_IN_BOWSER), &configRomhackCameraBowserFights, djui_panel_romhack_camera_value_changed); | ||||
|         djui_checkbox_create(body, DLANG(CAMERA, ROMHACK_CAMERA_COLLISION), &configRomhackCameraHasCollision, djui_panel_romhack_camera_value_changed); | ||||
|         djui_checkbox_create(body, DLANG(CAMERA, ROMHACK_CAMERA_L_CENTERING), &configRomhackCameraHasCentering, djui_panel_romhack_camera_value_changed); | ||||
|  |  | |||
		Loading…
	
	Add table
		
		Reference in a new issue
	
	 Sunk
						Sunk