From 47ec5b5ac08426bcae9be7ce33dbba33d370ae90 Mon Sep 17 00:00:00 2001 From: denizk0461 Date: Fri, 18 Jul 2025 11:28:03 +0200 Subject: [PATCH] bet input now only permits numbers --- game.tscn | 15 +++++++++++++-- number_input.gd | 17 +++++++++++++++++ number_input.gd.uid | 1 + 3 files changed, 31 insertions(+), 2 deletions(-) create mode 100644 number_input.gd create mode 100644 number_input.gd.uid diff --git a/game.tscn b/game.tscn index 40856eb..4e81701 100644 --- a/game.tscn +++ b/game.tscn @@ -1,10 +1,11 @@ -[gd_scene load_steps=11 format=3 uid="uid://gqrdpjslr4np"] +[gd_scene load_steps=12 format=3 uid="uid://gqrdpjslr4np"] [ext_resource type="Script" uid="uid://p5gvnyhjqe6o" path="res://components/web_client_tcp.gd" id="1_feb5d"] [ext_resource type="Script" uid="uid://c0cqkatyo4uj1" path="res://components/client_interface.gd" id="2_e2o6t"] [ext_resource type="Script" uid="uid://utt8atbh7b2a" path="res://game_client.gd" id="3_feb5d"] [ext_resource type="Script" uid="uid://bipfa366flrfa" path="res://environment_manager.gd" id="4_7jktm"] [ext_resource type="PackedScene" uid="uid://jlovgr2iojrg" path="res://elements/player_hand.tscn" id="4_fc0e3"] +[ext_resource type="Script" uid="uid://bokp83oigikj2" path="res://number_input.gd" id="4_vef74"] [ext_resource type="PackedScene" uid="uid://b55xpcxk7g5ph" path="res://cards/playing_card.tscn" id="6_eow3j"] [ext_resource type="PackedScene" uid="uid://dj1wye7o27vil" path="res://assets/table.glb" id="7_eow3j"] [ext_resource type="Script" uid="uid://c5bk4gjeyh7vy" path="res://card_stack.gd" id="8_j5wjh"] @@ -196,8 +197,17 @@ offset_right = 327.0 offset_bottom = -114.0 grow_vertical = 0 -[node name="BetInput" type="LineEdit" parent="HBoxContainer/GameUI/BetContainer"] +[node name="BetInput" type="LineEdit" parent="HBoxContainer/GameUI/BetContainer" node_paths=PackedStringArray("submit_button")] layout_mode = 2 +max_length = 2 +context_menu_enabled = false +emoji_menu_enabled = false +virtual_keyboard_type = 2 +shortcut_keys_enabled = false +middle_mouse_paste_enabled = false +drag_and_drop_selection_enabled = false +script = ExtResource("4_vef74") +submit_button = NodePath("../SubmitBetButton") [node name="SubmitBetButton" type="Button" parent="HBoxContainer/GameUI/BetContainer"] layout_mode = 2 @@ -314,6 +324,7 @@ playing_card_scene = ExtResource("6_eow3j") [connection signal="pressed" from="HBoxContainer/ClientInterface/MarginContainer/VBoxContainer/ChatContainer/SendMessageButton" to="HBoxContainer/ClientInterface" method="_on_send_message_button_pressed"] [connection signal="pressed" from="HBoxContainer/GameUI/StartGameButton" to="HBoxContainer/GameUI" method="_on_start_game_button_pressed"] [connection signal="pressed" from="HBoxContainer/GameUI/PlayCardButton" to="EnvironmentManager/PlayerHand0" method="_on_play_card_button_pressed"] +[connection signal="text_changed" from="HBoxContainer/GameUI/BetContainer/BetInput" to="HBoxContainer/GameUI/BetContainer/BetInput" method="_on_text_changed"] [connection signal="pressed" from="HBoxContainer/GameUI/BetContainer/SubmitBetButton" to="HBoxContainer/GameUI" method="_on_submit_bet_button_pressed"] [connection signal="card_played" from="EnvironmentManager/PlayerHand0" to="HBoxContainer/GameUI" method="_on_player_hand_0_card_played"] [connection signal="card_selected" from="EnvironmentManager/PlayerHand0" to="HBoxContainer/GameUI" method="_on_player_hand_card_selected"] diff --git a/number_input.gd b/number_input.gd new file mode 100644 index 0000000..4b4a975 --- /dev/null +++ b/number_input.gd @@ -0,0 +1,17 @@ +class_name NumberEdit +extends LineEdit + +## Only allows numeric input, discards everything else. + +var _regex: RegEx = RegEx.new() +@export var submit_button: Button + +func _ready() -> void: + _regex.compile("[^\\d]") + submit_button.disabled = true + +func _on_text_changed(new_text: String) -> void: + if new_text.is_empty() or _regex.search(new_text): + submit_button.disabled = true + else: + submit_button.disabled = false diff --git a/number_input.gd.uid b/number_input.gd.uid new file mode 100644 index 0000000..80024dd --- /dev/null +++ b/number_input.gd.uid @@ -0,0 +1 @@ +uid://bokp83oigikj2