mirror of
				https://github.com/coop-deluxe/sm64coopdx.git
				synced 2025-10-30 08:01:01 +00:00 
			
		
		
		
	Merge 184bb8671d into fcef8699f2
				
					
				
			This commit is contained in:
		
						commit
						91aca3a3fc
					
				
					 15 changed files with 84 additions and 8 deletions
				
			
		|  | @ -189,6 +189,11 @@ MARIO_THEME = "Mario" | |||
| ODYSSEY_THEME = "Odyssey" | ||||
| FILE_SELECT_THEME = "Výběr souboru" | ||||
| 
 | ||||
| [CHAT_DISPLAY] | ||||
| TEXT_OPACITY = "Průhlednost Textu" | ||||
| BACKGROUND_OPACITY = "Průhlednost pozadí" | ||||
| CHAT_SCALE = "Velikost Chatu" | ||||
| 
 | ||||
| [DYNOS] | ||||
| DYNOS = "DYNOS" | ||||
| LOCAL_PLAYER_MODEL_ONLY = "Pouze lokální model hráče" | ||||
|  |  | |||
|  | @ -189,6 +189,11 @@ MARIO_THEME = "Mario" | |||
| ODYSSEY_THEME = "Odyssey" | ||||
| FILE_SELECT_THEME = "Bestand selecteren" | ||||
| 
 | ||||
| [CHAT_DISPLAY] | ||||
| TEXT_OPACITY = "Chat tekst doorzichtigheid" | ||||
| BACKGROUND_OPACITY = "Chat achtergrond doorzichtigheid" | ||||
| CHAT_SCALE = "Chat grootte" | ||||
| 
 | ||||
| [DYNOS] | ||||
| DYNOS = "DYNOS" | ||||
| LOCAL_PLAYER_MODEL_ONLY = "Alleen lokaal spelermodel" | ||||
|  |  | |||
|  | @ -189,6 +189,11 @@ MARIO_THEME = "Mario" | |||
| ODYSSEY_THEME = "Odyssey" | ||||
| FILE_SELECT_THEME = "File Select" | ||||
| 
 | ||||
| [CHAT_DISPLAY] | ||||
| TEXT_OPACITY = "Chat text opacity" | ||||
| BACKGROUND_OPACITY = "Chat background opacity" | ||||
| CHAT_SCALE = "Chat scale" | ||||
| 
 | ||||
| [DYNOS] | ||||
| DYNOS = "DYNOS" | ||||
| LOCAL_PLAYER_MODEL_ONLY = "Local Player Model Only" | ||||
|  |  | |||
|  | @ -189,6 +189,11 @@ MARIO_THEME = "Mario" | |||
| ODYSSEY_THEME = "Odyssey" | ||||
| FILE_SELECT_THEME = "Sélection de fichier" | ||||
| 
 | ||||
| [CHAT_DISPLAY] | ||||
| TEXT_OPACITY = "Opacité du texte du tchat" | ||||
| BACKGROUND_OPACITY = "Opacité du fond du tchat" | ||||
| CHAT_SCALE = "Échelle du tchat" | ||||
| 
 | ||||
| [DYNOS] | ||||
| DYNOS = "DYNOS" | ||||
| LOCAL_PLAYER_MODEL_ONLY = "Modèle de joueur local seulement" | ||||
|  |  | |||
|  | @ -189,6 +189,11 @@ MARIO_THEME = "Mario" | |||
| ODYSSEY_THEME = "Odyssey" | ||||
| FILE_SELECT_THEME = "Dateiauswahl" | ||||
| 
 | ||||
| [CHAT_DISPLAY] | ||||
| TEXT_OPACITY = "Chat-Textopazität" | ||||
| BACKGROUND_OPACITY = "Opazität des Chat-Hintergrunds" | ||||
| CHAT_SCALE = "Chat-Größe" | ||||
| 
 | ||||
| [DYNOS] | ||||
| DYNOS = "DYNOS" | ||||
| LOCAL_PLAYER_MODEL_ONLY = "Nur lokales Spielermodell" | ||||
|  |  | |||
|  | @ -187,6 +187,11 @@ MARIO_THEME = "Mario" | |||
| ODYSSEY_THEME = "Odyssey" | ||||
| FILE_SELECT_THEME = "Selezione file" | ||||
| 
 | ||||
| [CHAT_DISPLAY] | ||||
| TEXT_OPACITY = "Opacità testo della chat" | ||||
| BACKGROUND_OPACITY = "Opacità sfondo della chat" | ||||
| CHAT_SCALE = "Grandezza della chat" | ||||
| 
 | ||||
| [DYNOS] | ||||
| DYNOS = "DYNOS" | ||||
| LOCAL_PLAYER_MODEL_ONLY = "Solo modello del giocatore locale" | ||||
|  |  | |||
|  | @ -190,6 +190,11 @@ MARIO_THEME = "マリオ" | |||
| ODYSSEY_THEME = "オデッセイ風" | ||||
| FILE_SELECT_THEME = "ファイルセレクト風" | ||||
| 
 | ||||
| [CHAT_DISPLAY] | ||||
| TEXT_OPACITY = "チャットテキストの不透明度" | ||||
| BACKGROUND_OPACITY = "チャットの背景の不透明度" | ||||
| CHAT_SCALE = "チャットスケール" | ||||
| 
 | ||||
| [DYNOS] | ||||
| DYNOS = "DYNOS" | ||||
| LOCAL_PLAYER_MODEL_ONLY = "ローカルのキャラモデルに限定" | ||||
|  |  | |||
|  | @ -189,6 +189,11 @@ MARIO_THEME = "Mario" | |||
| ODYSSEY_THEME = "Odyssey" | ||||
| FILE_SELECT_THEME = "Wybór Pliku" | ||||
| 
 | ||||
| [CHAT_DISPLAY] | ||||
| TEXT_OPACITY = "Nieprzezroczystość tekstu czatu" | ||||
| BACKGROUND_OPACITY = "Nieprzezroczystość tła czatu" | ||||
| CHAT_SCALE = "Skala czatu" | ||||
| 
 | ||||
| [DYNOS] | ||||
| DYNOS = "DYNOS" | ||||
| LOCAL_PLAYER_MODEL_ONLY = "Tylko lokalny model gracza" | ||||
|  |  | |||
|  | @ -189,6 +189,11 @@ MARIO_THEME = "Mario" | |||
| ODYSSEY_THEME = "Odyssey" | ||||
| FILE_SELECT_THEME = "Seletor de Arquivo" | ||||
| 
 | ||||
| [CHAT_DISPLAY] | ||||
| TEXT_OPACITY = "Opacidade do texto do chat" | ||||
| BACKGROUND_OPACITY = "Opacidade do fundo do chat" | ||||
| CHAT_SCALE = "Tamanho do chat" | ||||
| 
 | ||||
| [DYNOS] | ||||
| DYNOS = "DYNOS" | ||||
| LOCAL_PLAYER_MODEL_ONLY = "Apenas modelo do jogador local" | ||||
|  |  | |||
|  | @ -188,6 +188,11 @@ MARIO_THEME = "Mario" | |||
| ODYSSEY_THEME = "Одиссеи" | ||||
| FILE_SELECT_THEME = "Выбор файла" | ||||
| 
 | ||||
| [CHAT_DISPLAY] | ||||
| TEXT_OPACITY = "Непрозрачность текста чата" | ||||
| BACKGROUND_OPACITY = "Непрозрачность фона чата" | ||||
| CHAT_SCALE = "Масштаб чата" | ||||
| 
 | ||||
| [DYNOS] | ||||
| DYNOS = "DYNOS" | ||||
| LOCAL_PLAYER_MODEL_ONLY = "Только локальная модель игрока" | ||||
|  |  | |||
|  | @ -189,6 +189,11 @@ MARIO_THEME = "Mario" | |||
| ODYSSEY_THEME = "Odyssey" | ||||
| FILE_SELECT_THEME = "Selección de archivo" | ||||
| 
 | ||||
| [CHAT_DISPLAY] | ||||
| TEXT_OPACITY = "Opacidad del texto del chat" | ||||
| BACKGROUND_OPACITY = "Opacidad del fondo del chat" | ||||
| CHAT_SCALE = "Escala del chat" | ||||
| 
 | ||||
| [DYNOS] | ||||
| DYNOS = "DYNOS" | ||||
| LOCAL_PLAYER_MODEL_ONLY = "Solo modelo de jugador local" | ||||
|  |  | |||
|  | @ -207,6 +207,9 @@ bool         configDjuiThemeCenter                = true; | |||
| bool         configDjuiThemeGradients             = true; | ||||
| unsigned int configDjuiThemeFont                  = FONT_NORMAL; | ||||
| unsigned int configDjuiScale                      = 0; | ||||
| unsigned int configDjuiChatAlpha                  = 255; | ||||
| unsigned int configDjuiBaseAlpha                  = 127; | ||||
| unsigned int configDjuiChatSize                   = 100; | ||||
| // other
 | ||||
| unsigned int configRulesVersion                   = 0; | ||||
| bool         configCompressOnStartup              = false; | ||||
|  | @ -362,6 +365,9 @@ static const struct ConfigOption options[] = { | |||
|     {.name = "djui_theme_gradients",           .type = CONFIG_TYPE_BOOL,   .boolValue   = &configDjuiThemeGradients}, | ||||
|     {.name = "djui_theme_font",                .type = CONFIG_TYPE_UINT,   .uintValue   = &configDjuiThemeFont}, | ||||
|     {.name = "djui_scale",                     .type = CONFIG_TYPE_UINT,   .uintValue   = &configDjuiScale}, | ||||
|     {.name = "djui_chat_alpha",                .type = CONFIG_TYPE_UINT,   .uintValue   = &configDjuiChatAlpha}, | ||||
|     {.name = "djui_base_alpha",                .type = CONFIG_TYPE_UINT,   .uintValue   = &configDjuiBaseAlpha}, | ||||
|     {.name = "djui_chat_size",                 .type = CONFIG_TYPE_UINT,   .uintValue   = &configDjuiChatSize}, | ||||
|     // other
 | ||||
|     {.name = "rules_version",                  .type = CONFIG_TYPE_UINT,   .uintValue   = &configRulesVersion}, | ||||
|     {.name = "compress_on_startup",            .type = CONFIG_TYPE_BOOL,   .boolValue   = &configCompressOnStartup}, | ||||
|  | @ -789,6 +795,10 @@ NEXT_OPTION: | |||
|     if (configDjuiTheme >= DJUI_THEME_MAX) { configDjuiTheme = 0; } | ||||
|     if (configDjuiScale >= 5) { configDjuiScale = 0; } | ||||
| 
 | ||||
|     if (configDjuiChatAlpha > 255) { configDjuiChatAlpha = 255; } | ||||
|     if (configDjuiBaseAlpha > 255) { configDjuiBaseAlpha = 255; } | ||||
|     if (configDjuiChatSize > 200) { configDjuiChatSize = 200; } | ||||
| 
 | ||||
|     if (gCLIOpts.fullscreen == 1) { | ||||
|         configWindow.fullscreen = true; | ||||
|     } else if (gCLIOpts.fullscreen == 2) { | ||||
|  |  | |||
|  | @ -168,6 +168,9 @@ extern bool         configDjuiThemeCenter; | |||
| extern bool         configDjuiThemeGradients; | ||||
| extern unsigned int configDjuiThemeFont; | ||||
| extern unsigned int configDjuiScale; | ||||
| extern unsigned int configDjuiChatAlpha; | ||||
| extern unsigned int configDjuiBaseAlpha; | ||||
| extern unsigned int configDjuiChatSize; | ||||
| // other
 | ||||
| extern unsigned int configRulesVersion; | ||||
| extern bool         configCompressOnStartup; | ||||
|  |  | |||
|  | @ -14,6 +14,7 @@ | |||
| static bool djui_chat_message_render(struct DjuiBase* base) { | ||||
|     struct DjuiChatMessage* chatMessage = (struct DjuiChatMessage*)base; | ||||
|     struct DjuiBase* ctBase = &chatMessage->message->base; | ||||
|     struct DjuiTheme* theme = gDjuiThemes[configDjuiTheme]; | ||||
| 
 | ||||
|     f32 seconds = clock_elapsed() - chatMessage->createTime; | ||||
|     f32 f = 1.0f; | ||||
|  | @ -24,15 +25,15 @@ static bool djui_chat_message_render(struct DjuiBase* base) { | |||
|     } | ||||
| 
 | ||||
|     if (gDjuiChatBoxFocus) { | ||||
|         djui_base_set_color(base, 0, 0, 0, 120); | ||||
|         djui_base_set_color(ctBase, 255, 255, 255, 255); | ||||
|         djui_base_set_color(base, theme->threePanels.rectColor.r, theme->threePanels.rectColor.g, theme->threePanels.rectColor.b, configDjuiBaseAlpha); | ||||
|         djui_base_set_color(ctBase, theme->interactables.textColor.r, theme->interactables.textColor.g, theme->interactables.textColor.b, configDjuiChatAlpha); | ||||
|         djui_base_set_size_type(base, DJUI_SVT_RELATIVE, DJUI_SVT_ABSOLUTE); | ||||
|         djui_base_set_size(base, 1.0f, chatMessage->base.height.value); | ||||
|     } else if (f <= 0.1f) { | ||||
|         return false; | ||||
|     } else { | ||||
|         djui_base_set_color(base, 0, 0, 0, 180 * f); | ||||
|         djui_base_set_color(ctBase, 255, 255, 255, 255 * f); | ||||
|         djui_base_set_color(base, theme->threePanels.rectColor.r, theme->threePanels.rectColor.g, theme->threePanels.rectColor.b, configDjuiBaseAlpha * f); | ||||
|         djui_base_set_color(ctBase, theme->interactables.textColor.r, theme->interactables.textColor.g, theme->interactables.textColor.b, configDjuiChatAlpha * f); | ||||
|         djui_base_set_size_type(base, DJUI_SVT_ABSOLUTE, DJUI_SVT_ABSOLUTE); | ||||
|         djui_base_set_size(base, chatMessage->messageWidth, chatMessage->base.height.value); | ||||
|     } | ||||
|  | @ -73,10 +74,11 @@ void djui_chat_message_create(const char* message) { | |||
|     if (gDjuiChatBox == NULL || gDjuiChatBox->chatFlow == NULL) { return; } | ||||
|     struct DjuiChatMessage* chatMessage = calloc(1, sizeof(struct DjuiChatMessage)); | ||||
|     struct DjuiBase* base = &chatMessage->base; | ||||
|     f32 chatScale = (configDjuiChatSize * 0.01); | ||||
|     djui_base_init(&gDjuiChatBox->chatFlow->base, base, djui_chat_message_render, djui_chat_message_destroy); | ||||
|     djui_base_set_size_type(base, DJUI_SVT_RELATIVE, DJUI_SVT_ABSOLUTE); | ||||
|     djui_base_set_size(base, 1.0f, 0); | ||||
|     djui_base_set_color(base, 0, 0, 0, 64); | ||||
|     djui_base_set_size(base, chatScale, 0); | ||||
|     djui_base_set_color(base, 0, 0, 0, configDjuiBaseAlpha); | ||||
|     djui_base_set_padding(base, 2, 4, 2, 4); | ||||
|     djui_base_set_alignment(base, DJUI_HALIGN_LEFT, DJUI_VALIGN_BOTTOM); | ||||
| 
 | ||||
|  | @ -86,15 +88,17 @@ void djui_chat_message_create(const char* message) { | |||
|     struct DjuiBase* ctBase = &chatText->base; | ||||
|     djui_base_set_size_type(ctBase, DJUI_SVT_ABSOLUTE, DJUI_SVT_RELATIVE); | ||||
|     djui_base_set_size(ctBase, maxTextWidth, 1.0f); | ||||
|     djui_base_set_color(ctBase, 255, 255, 255, 255); | ||||
|     djui_base_set_location(ctBase, 0, 0); | ||||
|     djui_text_set_alignment(chatText, DJUI_HALIGN_LEFT, DJUI_VALIGN_TOP); | ||||
|     djui_base_set_color(&chatText->base, 255, 255, 255, configDjuiChatAlpha); | ||||
| 
 | ||||
|     chatMessage->message = chatText; | ||||
|     chatText->fontScale *= chatScale; | ||||
|     chatMessage->createTime = clock_elapsed(); | ||||
| 
 | ||||
|     // figure out chat message height
 | ||||
|     chatText->base.comp.width = maxTextWidth; | ||||
|     f32 messageHeight = djui_text_count_lines(chatText, 10) * (chatText->font->lineHeight * chatText->font->defaultFontScale) + 8; | ||||
|     f32 messageHeight = djui_text_count_lines(chatText, 10) * (chatText->font->lineHeight * chatText->font->defaultFontScale * chatScale) + 8 * chatScale; | ||||
|     djui_base_set_size(base, 1.0f, messageHeight); | ||||
|     gDjuiChatBox->chatFlow->base.height.value += messageHeight + gDjuiChatBox->chatFlow->margin.value; | ||||
|     if (!gDjuiChatBox->scrolling) { | ||||
|  |  | |||
|  | @ -142,6 +142,10 @@ void djui_panel_main_menu_create(struct DjuiBase* caller) { | |||
|         char* djuiFontChoices[2] = {DLANG(DJUI_THEMES, FONT_NORMAL), DLANG(DJUI_THEMES, FONT_ALIASED)}; | ||||
|         djui_selectionbox_create(body, DLANG(DJUI_THEMES, DJUI_FONT), djuiFontChoices, 2, &configDjuiThemeFont, djui_panel_menu_options_djui_setting_change); | ||||
| 
 | ||||
|         djui_slider_create(body, DLANG(CHAT_DISPLAY, TEXT_OPACITY), &configDjuiChatAlpha, 0, 255, NULL); | ||||
|         djui_slider_create(body, DLANG(CHAT_DISPLAY, BACKGROUND_OPACITY), &configDjuiBaseAlpha, 0, 255, NULL); | ||||
|         djui_slider_create(body, DLANG(CHAT_DISPLAY, CHAT_SCALE), &configDjuiChatSize, 0, 200, NULL); | ||||
| 
 | ||||
|         if (gDjuiInMainMenu) { | ||||
|             // copy sound choices from gMainMenuSounds
 | ||||
|             int numSounds = sizeof(gMainMenuSounds) / sizeof(gMainMenuSounds[0]); | ||||
|  |  | |||
		Loading…
	
	Add table
		
		Reference in a new issue
	
	 Blockyyy
						Blockyyy