generated from krampus/template-godot4
Compare commits
No commits in common. "bfe2ca46d4aa17b714b22f7b3c7136e3d61c87f3" and "75d08d0dc2eaef1e0f9ba41e83a705e673264adb" have entirely different histories.
bfe2ca46d4
...
75d08d0dc2
|
@ -13,14 +13,6 @@ Asset credits
|
|||
|
||||
* Fonts
|
||||
|
||||
** PromptFont
|
||||
|
||||
*** Retrieved from https://shinmera.github.io/promptfont/
|
||||
|
||||
*** Author: Yukari "Shinmera" Hafner (https://shinmera.com)
|
||||
|
||||
*** License: SIL OFL 1.1
|
||||
|
||||
** Dokdo
|
||||
|
||||
*** Retrieved from https://fonts.google.com/specimen/Dokdo
|
||||
|
|
|
@ -1,91 +0,0 @@
|
|||
This Font Software is licensed under the SIL Open Font License,
|
||||
Version 1.1. This license is copied below, and is also available
|
||||
with a FAQ at <http://scripts.sil.org/OFL>
|
||||
|
||||
|
||||
-----------------------------------------------------------
|
||||
SIL OPEN FONT LICENSE Version 1.1 - 26 February 2007
|
||||
-----------------------------------------------------------
|
||||
|
||||
PREAMBLE
|
||||
The goals of the Open Font License (OFL) are to stimulate worldwide
|
||||
development of collaborative font projects, to support the font creation
|
||||
efforts of academic and linguistic communities, and to provide a free and
|
||||
open framework in which fonts may be shared and improved in partnership
|
||||
with others.
|
||||
|
||||
The OFL allows the licensed fonts to be used, studied, modified and
|
||||
redistributed freely as long as they are not sold by themselves. The
|
||||
fonts, including any derivative works, can be bundled, embedded,
|
||||
redistributed and/or sold with any software provided that any reserved
|
||||
names are not used by derivative works. The fonts and derivatives,
|
||||
however, cannot be released under any other type of license. The
|
||||
requirement for fonts to remain under this license does not apply
|
||||
to any document created using the fonts or their derivatives.
|
||||
|
||||
DEFINITIONS
|
||||
"Font Software" refers to the set of files released by the Copyright
|
||||
Holder(s) under this license and clearly marked as such. This may
|
||||
include source files, build scripts and documentation.
|
||||
|
||||
"Reserved Font Name" refers to any names specified as such after the
|
||||
copyright statement(s).
|
||||
|
||||
"Original Version" refers to the collection of Font Software components as
|
||||
distributed by the Copyright Holder(s).
|
||||
|
||||
"Modified Version" refers to any derivative made by adding to, deleting,
|
||||
or substituting -- in part or in whole -- any of the components of the
|
||||
Original Version, by changing formats or by porting the Font Software to a
|
||||
new environment.
|
||||
|
||||
"Author" refers to any designer, engineer, programmer, technical
|
||||
writer or other person who contributed to the Font Software.
|
||||
|
||||
PERMISSION & CONDITIONS
|
||||
Permission is hereby granted, free of charge, to any person obtaining
|
||||
a copy of the Font Software, to use, study, copy, merge, embed, modify,
|
||||
redistribute, and sell modified and unmodified copies of the Font
|
||||
Software, subject to the following conditions:
|
||||
|
||||
1) Neither the Font Software nor any of its individual components,
|
||||
in Original or Modified Versions, may be sold by itself.
|
||||
|
||||
2) Original or Modified Versions of the Font Software may be bundled,
|
||||
redistributed and/or sold with any software, provided that each copy
|
||||
contains the above copyright notice and this license. These can be
|
||||
included either as stand-alone text files, human-readable headers or
|
||||
in the appropriate machine-readable metadata fields within text or
|
||||
binary files as long as those fields can be easily viewed by the user.
|
||||
|
||||
3) No Modified Version of the Font Software may use the Reserved Font
|
||||
Name(s) unless explicit written permission is granted by the corresponding
|
||||
Copyright Holder. This restriction only applies to the primary font name as
|
||||
presented to the users.
|
||||
|
||||
4) The name(s) of the Copyright Holder(s) or the Author(s) of the Font
|
||||
Software shall not be used to promote, endorse or advertise any
|
||||
Modified Version, except to acknowledge the contribution(s) of the
|
||||
Copyright Holder(s) and the Author(s) or with their explicit written
|
||||
permission.
|
||||
|
||||
5) The Font Software, modified or unmodified, in part or in whole,
|
||||
must be distributed entirely under this license, and must not be
|
||||
distributed under any other license. The requirement for fonts to
|
||||
remain under this license does not apply to any document created
|
||||
using the Font Software.
|
||||
|
||||
TERMINATION
|
||||
This license becomes null and void if any of the above conditions are
|
||||
not met.
|
||||
|
||||
DISCLAIMER
|
||||
THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
||||
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF
|
||||
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT
|
||||
OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL THE
|
||||
COPYRIGHT HOLDER BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
|
||||
INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL
|
||||
DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
|
||||
FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM
|
||||
OTHER DEALINGS IN THE FONT SOFTWARE.
|
|
@ -1,959 +0,0 @@
|
|||
# PromptFont by Yukari "Shinmera" Hafner, accessible at https://shinmera.com/promptfont
|
||||
class_name PromptFont
|
||||
extends Resource
|
||||
const ASCII_BANG: StringName = &"!"
|
||||
const ASCII_BANG_INT: int = 33
|
||||
const ASCII_DOUBLEQUOTE: StringName = &'"'
|
||||
const ASCII_DOUBLEQUOTE_INT: int = 34
|
||||
const ASCII_HASH: StringName = &"#"
|
||||
const ASCII_HASH_INT: int = 35
|
||||
const ASCII_DOLLAR: StringName = &"$"
|
||||
const ASCII_DOLLAR_INT: int = 36
|
||||
const ASCII_PERCENT: StringName = &"%"
|
||||
const ASCII_PERCENT_INT: int = 37
|
||||
const ASCII_AMPERSAND: StringName = &"&"
|
||||
const ASCII_AMPERSAND_INT: int = 38
|
||||
const ASCII_QUOTE: StringName = &"'"
|
||||
const ASCII_QUOTE_INT: int = 39
|
||||
const ASCII_OPEN_PAREN: StringName = &"("
|
||||
const ASCII_OPEN_PAREN_INT: int = 40
|
||||
const ASCII_CLOSE_PAREN: StringName = &")"
|
||||
const ASCII_CLOSE_PAREN_INT: int = 41
|
||||
const ASCII_STAR: StringName = &"*"
|
||||
const ASCII_STAR_INT: int = 42
|
||||
const ASCII_PLUS: StringName = &"+"
|
||||
const ASCII_PLUS_INT: int = 43
|
||||
const ASCII_COMMA: StringName = &","
|
||||
const ASCII_COMMA_INT: int = 44
|
||||
const ASCII_DASH: StringName = &"-"
|
||||
const ASCII_DASH_INT: int = 45
|
||||
const ASCII_PERIOD: StringName = &"."
|
||||
const ASCII_PERIOD_INT: int = 46
|
||||
const ASCII_SLASH: StringName = &"/"
|
||||
const ASCII_SLASH_INT: int = 47
|
||||
const ASCII_0: StringName = &"0"
|
||||
const ASCII_0_INT: int = 48
|
||||
const ASCII_1: StringName = &"1"
|
||||
const ASCII_1_INT: int = 49
|
||||
const ASCII_2: StringName = &"2"
|
||||
const ASCII_2_INT: int = 50
|
||||
const ASCII_3: StringName = &"3"
|
||||
const ASCII_3_INT: int = 51
|
||||
const ASCII_4: StringName = &"4"
|
||||
const ASCII_4_INT: int = 52
|
||||
const ASCII_5: StringName = &"5"
|
||||
const ASCII_5_INT: int = 53
|
||||
const ASCII_6: StringName = &"6"
|
||||
const ASCII_6_INT: int = 54
|
||||
const ASCII_7: StringName = &"7"
|
||||
const ASCII_7_INT: int = 55
|
||||
const ASCII_8: StringName = &"8"
|
||||
const ASCII_8_INT: int = 56
|
||||
const ASCII_9: StringName = &"9"
|
||||
const ASCII_9_INT: int = 57
|
||||
const ASCII_COLON: StringName = &":"
|
||||
const ASCII_COLON_INT: int = 58
|
||||
const ASCII_SEMICOLON: StringName = &";"
|
||||
const ASCII_SEMICOLON_INT: int = 59
|
||||
const ASCII_OPEN_CARET: StringName = &"<"
|
||||
const ASCII_OPEN_CARET_INT: int = 60
|
||||
const ASCII_EQUALS: StringName = &"="
|
||||
const ASCII_EQUALS_INT: int = 61
|
||||
const ASCII_CLOSE_CARET: StringName = &">"
|
||||
const ASCII_CLOSE_CARET_INT: int = 62
|
||||
const ASCII_QUESTION: StringName = &"?"
|
||||
const ASCII_QUESTION_INT: int = 63
|
||||
const ASCII_AT: StringName = &"@"
|
||||
const ASCII_AT_INT: int = 64
|
||||
const ASCII_UPPER_A: StringName = &"A"
|
||||
const ASCII_UPPER_A_INT: int = 65
|
||||
const ASCII_UPPER_B: StringName = &"B"
|
||||
const ASCII_UPPER_B_INT: int = 66
|
||||
const ASCII_UPPER_C: StringName = &"C"
|
||||
const ASCII_UPPER_C_INT: int = 67
|
||||
const ASCII_UPPER_D: StringName = &"D"
|
||||
const ASCII_UPPER_D_INT: int = 68
|
||||
const ASCII_UPPER_E: StringName = &"E"
|
||||
const ASCII_UPPER_E_INT: int = 69
|
||||
const ASCII_UPPER_F: StringName = &"F"
|
||||
const ASCII_UPPER_F_INT: int = 70
|
||||
const ASCII_UPPER_G: StringName = &"G"
|
||||
const ASCII_UPPER_G_INT: int = 71
|
||||
const ASCII_UPPER_H: StringName = &"H"
|
||||
const ASCII_UPPER_H_INT: int = 72
|
||||
const ASCII_UPPER_I: StringName = &"I"
|
||||
const ASCII_UPPER_I_INT: int = 73
|
||||
const ASCII_UPPER_J: StringName = &"J"
|
||||
const ASCII_UPPER_J_INT: int = 74
|
||||
const ASCII_UPPER_K: StringName = &"K"
|
||||
const ASCII_UPPER_K_INT: int = 75
|
||||
const ASCII_UPPER_L: StringName = &"L"
|
||||
const ASCII_UPPER_L_INT: int = 76
|
||||
const ASCII_UPPER_M: StringName = &"M"
|
||||
const ASCII_UPPER_M_INT: int = 77
|
||||
const ASCII_UPPER_N: StringName = &"N"
|
||||
const ASCII_UPPER_N_INT: int = 78
|
||||
const ASCII_UPPER_O: StringName = &"O"
|
||||
const ASCII_UPPER_O_INT: int = 79
|
||||
const ASCII_UPPER_P: StringName = &"P"
|
||||
const ASCII_UPPER_P_INT: int = 80
|
||||
const ASCII_UPPER_Q: StringName = &"Q"
|
||||
const ASCII_UPPER_Q_INT: int = 81
|
||||
const ASCII_UPPER_R: StringName = &"R"
|
||||
const ASCII_UPPER_R_INT: int = 82
|
||||
const ASCII_UPPER_S: StringName = &"S"
|
||||
const ASCII_UPPER_S_INT: int = 83
|
||||
const ASCII_UPPER_T: StringName = &"T"
|
||||
const ASCII_UPPER_T_INT: int = 84
|
||||
const ASCII_UPPER_U: StringName = &"U"
|
||||
const ASCII_UPPER_U_INT: int = 85
|
||||
const ASCII_UPPER_V: StringName = &"V"
|
||||
const ASCII_UPPER_V_INT: int = 86
|
||||
const ASCII_UPPER_W: StringName = &"W"
|
||||
const ASCII_UPPER_W_INT: int = 87
|
||||
const ASCII_UPPER_X: StringName = &"X"
|
||||
const ASCII_UPPER_X_INT: int = 88
|
||||
const ASCII_UPPER_Y: StringName = &"Y"
|
||||
const ASCII_UPPER_Y_INT: int = 89
|
||||
const ASCII_UPPER_Z: StringName = &"Z"
|
||||
const ASCII_UPPER_Z_INT: int = 90
|
||||
const ASCII_OPEN_BRACKET: StringName = &"["
|
||||
const ASCII_OPEN_BRACKET_INT: int = 91
|
||||
const ASCII_BACKSLASH: StringName = &"\\"
|
||||
const ASCII_BACKSLASH_INT: int = 92
|
||||
const ASCII_CLOSE_BRACKET: StringName = &"]"
|
||||
const ASCII_CLOSE_BRACKET_INT: int = 93
|
||||
const ASCII_CARET: StringName = &"^"
|
||||
const ASCII_CARET_INT: int = 94
|
||||
const ASCII_UNDERSCORE: StringName = &"_"
|
||||
const ASCII_UNDERSCORE_INT: int = 95
|
||||
const ASCII_BACKTICK: StringName = &"`"
|
||||
const ASCII_BACKTICK_INT: int = 96
|
||||
const ASCII_LOWER_A: StringName = &"a"
|
||||
const ASCII_LOWER_A_INT: int = 97
|
||||
const ASCII_LOWER_B: StringName = &"b"
|
||||
const ASCII_LOWER_B_INT: int = 98
|
||||
const ASCII_LOWER_C: StringName = &"c"
|
||||
const ASCII_LOWER_C_INT: int = 99
|
||||
const ASCII_LOWER_D: StringName = &"d"
|
||||
const ASCII_LOWER_D_INT: int = 100
|
||||
const ASCII_LOWER_E: StringName = &"e"
|
||||
const ASCII_LOWER_E_INT: int = 101
|
||||
const ASCII_LOWER_F: StringName = &"f"
|
||||
const ASCII_LOWER_F_INT: int = 102
|
||||
const ASCII_LOWER_G: StringName = &"g"
|
||||
const ASCII_LOWER_G_INT: int = 103
|
||||
const ASCII_LOWER_H: StringName = &"h"
|
||||
const ASCII_LOWER_H_INT: int = 104
|
||||
const ASCII_LOWER_I: StringName = &"i"
|
||||
const ASCII_LOWER_I_INT: int = 105
|
||||
const ASCII_LOWER_J: StringName = &"j"
|
||||
const ASCII_LOWER_J_INT: int = 106
|
||||
const ASCII_LOWER_K: StringName = &"k"
|
||||
const ASCII_LOWER_K_INT: int = 107
|
||||
const ASCII_LOWER_L: StringName = &"l"
|
||||
const ASCII_LOWER_L_INT: int = 108
|
||||
const ASCII_LOWER_M: StringName = &"m"
|
||||
const ASCII_LOWER_M_INT: int = 109
|
||||
const ASCII_LOWER_N: StringName = &"n"
|
||||
const ASCII_LOWER_N_INT: int = 110
|
||||
const ASCII_LOWER_O: StringName = &"o"
|
||||
const ASCII_LOWER_O_INT: int = 111
|
||||
const ASCII_LOWER_P: StringName = &"p"
|
||||
const ASCII_LOWER_P_INT: int = 112
|
||||
const ASCII_LOWER_Q: StringName = &"q"
|
||||
const ASCII_LOWER_Q_INT: int = 113
|
||||
const ASCII_LOWER_R: StringName = &"r"
|
||||
const ASCII_LOWER_R_INT: int = 114
|
||||
const ASCII_LOWER_S: StringName = &"s"
|
||||
const ASCII_LOWER_S_INT: int = 115
|
||||
const ASCII_LOWER_T: StringName = &"t"
|
||||
const ASCII_LOWER_T_INT: int = 116
|
||||
const ASCII_LOWER_U: StringName = &"u"
|
||||
const ASCII_LOWER_U_INT: int = 117
|
||||
const ASCII_LOWER_V: StringName = &"v"
|
||||
const ASCII_LOWER_V_INT: int = 118
|
||||
const ASCII_LOWER_W: StringName = &"w"
|
||||
const ASCII_LOWER_W_INT: int = 119
|
||||
const ASCII_LOWER_X: StringName = &"x"
|
||||
const ASCII_LOWER_X_INT: int = 120
|
||||
const ASCII_LOWER_Y: StringName = &"y"
|
||||
const ASCII_LOWER_Y_INT: int = 121
|
||||
const ASCII_LOWER_Z: StringName = &"z"
|
||||
const ASCII_LOWER_Z_INT: int = 122
|
||||
const ASCII_OPEN_BRACE: StringName = &"{"
|
||||
const ASCII_OPEN_BRACE_INT: int = 123
|
||||
const ASCII_BAR: StringName = &"|"
|
||||
const ASCII_BAR_INT: int = 124
|
||||
const ASCII_CLOSE_BRACE: StringName = &"}"
|
||||
const ASCII_CLOSE_BRACE_INT: int = 125
|
||||
const ASCII_TILDE: StringName = &"~"
|
||||
const ASCII_TILDE_INT: int = 126
|
||||
const ICON_EXCHANGE: StringName = &"↔"
|
||||
const ICON_EXCHANGE_INT: int = 8596
|
||||
const ICON_REVERSE: StringName = &"↕"
|
||||
const ICON_REVERSE_INT: int = 8597
|
||||
const XBOX_LEFT_TRIGGER: StringName = &"↖"
|
||||
const XBOX_LEFT_TRIGGER_INT: int = 8598
|
||||
const XBOX_RIGHT_TRIGGER: StringName = &"↗"
|
||||
const XBOX_RIGHT_TRIGGER_INT: int = 8599
|
||||
const XBOX_LEFT_SHOULDER: StringName = &"↘"
|
||||
const XBOX_LEFT_SHOULDER_INT: int = 8600
|
||||
const XBOX_RIGHT_SHOULDER: StringName = &"↙"
|
||||
const XBOX_RIGHT_SHOULDER_INT: int = 8601
|
||||
const NINTENDO_LEFT_TRIGGER: StringName = &"↚"
|
||||
const NINTENDO_LEFT_TRIGGER_INT: int = 8602
|
||||
const NINTENDO_RIGHT_TRIGGER: StringName = &"↛"
|
||||
const NINTENDO_RIGHT_TRIGGER_INT: int = 8603
|
||||
const NINTENDO_LEFT_SHOULDER: StringName = &"↜"
|
||||
const NINTENDO_LEFT_SHOULDER_INT: int = 8604
|
||||
const NINTENDO_RIGHT_SHOULDER: StringName = &"↝"
|
||||
const NINTENDO_RIGHT_SHOULDER_INT: int = 8605
|
||||
const DPAD_LEFT: StringName = &"↞"
|
||||
const DPAD_LEFT_INT: int = 8606
|
||||
const DPAD_UP: StringName = &"↟"
|
||||
const DPAD_UP_INT: int = 8607
|
||||
const DPAD_RIGHT: StringName = &"↠"
|
||||
const DPAD_RIGHT_INT: int = 8608
|
||||
const DPAD_DOWN: StringName = &"↡"
|
||||
const DPAD_DOWN_INT: int = 8609
|
||||
const DPAD_LEFT_RIGHT: StringName = &"↢"
|
||||
const DPAD_LEFT_RIGHT_INT: int = 8610
|
||||
const DPAD_UP_DOWN: StringName = &"↣"
|
||||
const DPAD_UP_DOWN_INT: int = 8611
|
||||
const GAMEPAD_X: StringName = &"↤"
|
||||
const GAMEPAD_X_INT: int = 8612
|
||||
const GAMEPAD_Y: StringName = &"↥"
|
||||
const GAMEPAD_Y_INT: int = 8613
|
||||
const GAMEPAD_B: StringName = &"↦"
|
||||
const GAMEPAD_B_INT: int = 8614
|
||||
const GAMEPAD_A: StringName = &"↧"
|
||||
const GAMEPAD_A_INT: int = 8615
|
||||
const ANALOG_L_CLOCKWISE: StringName = &"↩"
|
||||
const ANALOG_L_CLOCKWISE_INT: int = 8617
|
||||
const ANALOG_L_COUNTER: StringName = &"↪"
|
||||
const ANALOG_L_COUNTER_INT: int = 8618
|
||||
const ANALOG_R_CLOCKWISE: StringName = &"↫"
|
||||
const ANALOG_R_CLOCKWISE_INT: int = 8619
|
||||
const ANALOG_R_COUNTER: StringName = &"↬"
|
||||
const ANALOG_R_COUNTER_INT: int = 8620
|
||||
const ANALOG_LR_BLOCKWISE: StringName = &"↭"
|
||||
const ANALOG_LR_BLOCKWISE_INT: int = 8621
|
||||
const ANALOG_LR_COUNTER: StringName = &"↮"
|
||||
const ANALOG_LR_COUNTER_INT: int = 8622
|
||||
const SONY_LEFT_SHOULDER: StringName = &"↰"
|
||||
const SONY_LEFT_SHOULDER_INT: int = 8624
|
||||
const SONY_RIGHT_SHOULDER: StringName = &"↱"
|
||||
const SONY_RIGHT_SHOULDER_INT: int = 8625
|
||||
const SONY_LEFT_TRIGGER: StringName = &"↲"
|
||||
const SONY_LEFT_TRIGGER_INT: int = 8626
|
||||
const SONY_RIGHT_TRIGGER: StringName = &"↳"
|
||||
const SONY_RIGHT_TRIGGER_INT: int = 8627
|
||||
const DPAD_LEFT_DOWN: StringName = &"↴"
|
||||
const DPAD_LEFT_DOWN_INT: int = 8628
|
||||
const GAMEPAD_UP_RIGHT: StringName = &"↵"
|
||||
const GAMEPAD_UP_RIGHT_INT: int = 8629
|
||||
const ANALOG_CLOCKWISE: StringName = &"↶"
|
||||
const ANALOG_CLOCKWISE_INT: int = 8630
|
||||
const ANALOG_COUNTER: StringName = &"↷"
|
||||
const ANALOG_COUNTER_INT: int = 8631
|
||||
const ANALOG_CLICK: StringName = &"↹"
|
||||
const ANALOG_CLICK_INT: int = 8633
|
||||
const ANALOG_L_CLICK: StringName = &"↺"
|
||||
const ANALOG_L_CLICK_INT: int = 8634
|
||||
const ANALOG_R_CLICK: StringName = &"↻"
|
||||
const ANALOG_R_CLICK_INT: int = 8635
|
||||
const ANALOG_L_LEFT: StringName = &"↼"
|
||||
const ANALOG_L_LEFT_INT: int = 8636
|
||||
const ANALOG_R_LEFT: StringName = &"↽"
|
||||
const ANALOG_R_LEFT_INT: int = 8637
|
||||
const ANALOG_L_UP: StringName = &"↾"
|
||||
const ANALOG_L_UP_INT: int = 8638
|
||||
const ANALOG_R_UP: StringName = &"↿"
|
||||
const ANALOG_R_UP_INT: int = 8639
|
||||
const ANALOG_L_RIGHT: StringName = &"⇀"
|
||||
const ANALOG_L_RIGHT_INT: int = 8640
|
||||
const ANALOG_R_RIGHT: StringName = &"⇁"
|
||||
const ANALOG_R_RIGHT_INT: int = 8641
|
||||
const ANALOG_L_DOWN: StringName = &"⇂"
|
||||
const ANALOG_L_DOWN_INT: int = 8642
|
||||
const ANALOG_R_DOWN: StringName = &"⇃"
|
||||
const ANALOG_R_DOWN_INT: int = 8643
|
||||
const ANALOG_L_LEFT_RIGHT: StringName = &"⇄"
|
||||
const ANALOG_L_LEFT_RIGHT_INT: int = 8644
|
||||
const ANALOG_L_UP_DOWN: StringName = &"⇅"
|
||||
const ANALOG_L_UP_DOWN_INT: int = 8645
|
||||
const ANALOG_R_LEFT_RIGHT: StringName = &"⇆"
|
||||
const ANALOG_R_LEFT_RIGHT_INT: int = 8646
|
||||
const ANALOG_LEFT: StringName = &"⇇"
|
||||
const ANALOG_LEFT_INT: int = 8647
|
||||
const ANALOG_UP: StringName = &"⇈"
|
||||
const ANALOG_UP_INT: int = 8648
|
||||
const ANALOG_RIGHT: StringName = &"⇉"
|
||||
const ANALOG_RIGHT_INT: int = 8649
|
||||
const ANALOG_DOWN: StringName = &"⇊"
|
||||
const ANALOG_DOWN_INT: int = 8650
|
||||
const ANALOG_L: StringName = &"⇋"
|
||||
const ANALOG_L_INT: int = 8651
|
||||
const ANALOG_R: StringName = &"⇌"
|
||||
const ANALOG_R_INT: int = 8652
|
||||
const DPAD: StringName = &"⇎"
|
||||
const DPAD_INT: int = 8654
|
||||
const XBOX_X: StringName = &"⇐"
|
||||
const XBOX_X_INT: int = 8656
|
||||
const XBOX_Y: StringName = &"⇑"
|
||||
const XBOX_Y_INT: int = 8657
|
||||
const XBOX_B: StringName = &"⇒"
|
||||
const XBOX_B_INT: int = 8658
|
||||
const XBOX_A: StringName = &"⇓"
|
||||
const XBOX_A_INT: int = 8659
|
||||
const ANALOG_LEFT_RIGHT: StringName = &"⇔"
|
||||
const ANALOG_LEFT_RIGHT_INT: int = 8660
|
||||
const ANALOG_UP_DOWN: StringName = &"⇕"
|
||||
const ANALOG_UP_DOWN_INT: int = 8661
|
||||
const ANALOG_UP_LEFT: StringName = &"⇖"
|
||||
const ANALOG_UP_LEFT_INT: int = 8662
|
||||
const ANALOG_UP_RIGHT: StringName = &"⇗"
|
||||
const ANALOG_UP_RIGHT_INT: int = 8663
|
||||
const ANALOG_DOWN_RIGHT: StringName = &"⇘"
|
||||
const ANALOG_DOWN_RIGHT_INT: int = 8664
|
||||
const ANALOG_DOWN_LEFT: StringName = &"⇙"
|
||||
const ANALOG_DOWN_LEFT_INT: int = 8665
|
||||
const ANALOG_L_TOUCH: StringName = &"⇚"
|
||||
const ANALOG_L_TOUCH_INT: int = 8666
|
||||
const ANALOG_R_TOUCH: StringName = &"⇛"
|
||||
const ANALOG_R_TOUCH_INT: int = 8667
|
||||
const XBOX_LEFT_TRIGGER_PULL: StringName = &"⇜"
|
||||
const XBOX_LEFT_TRIGGER_PULL_INT: int = 8668
|
||||
const XBOX_RIGHT_TRIGGER_PULL: StringName = &"⇝"
|
||||
const XBOX_RIGHT_TRIGGER_PULL_INT: int = 8669
|
||||
const DPAD_RIGHT_DOWN: StringName = &"⇞"
|
||||
const DPAD_RIGHT_DOWN_INT: int = 8670
|
||||
const DUPAD_LEFT_UP: StringName = &"⇟"
|
||||
const DUPAD_LEFT_UP_INT: int = 8671
|
||||
const SONY_X: StringName = &"⇠"
|
||||
const SONY_X_INT: int = 8672
|
||||
const SONY_Y: StringName = &"⇡"
|
||||
const SONY_Y_INT: int = 8673
|
||||
const SONY_B: StringName = &"⇢"
|
||||
const SONY_B_INT: int = 8674
|
||||
const SONY_A: StringName = &"⇣"
|
||||
const SONY_A_INT: int = 8675
|
||||
const STEAM_MENU: StringName = &"⇤"
|
||||
const STEAM_MENU_INT: int = 8676
|
||||
const STEAM_OPTIONS: StringName = &"⇥"
|
||||
const STEAM_OPTIONS_INT: int = 8677
|
||||
const SONY_SHARE: StringName = &"⇦"
|
||||
const SONY_SHARE_INT: int = 8678
|
||||
const SONY_TOUCHPAD: StringName = &"⇧"
|
||||
const SONY_TOUCHPAD_INT: int = 8679
|
||||
const SONY_OPTIONS: StringName = &"⇨"
|
||||
const SONY_OPTIONS_INT: int = 8680
|
||||
const NINTENDO_BUTTON_Z: StringName = &"⇩"
|
||||
const NINTENDO_BUTTON_Z_INT: int = 8681
|
||||
const NINTENDO_TRIGGER_Z: StringName = &"⇪"
|
||||
const NINTENDO_TRIGGER_Z_INT: int = 8682
|
||||
const NINTENDO_C: StringName = &"⇫"
|
||||
const NINTENDO_C_INT: int = 8683
|
||||
const NINTENDO_Z: StringName = &"⇬"
|
||||
const NINTENDO_Z_INT: int = 8684
|
||||
const NINTENDO_1: StringName = &"⇭"
|
||||
const NINTENDO_1_INT: int = 8685
|
||||
const NINTENDO_2: StringName = &"⇮"
|
||||
const NINTENDO_2_INT: int = 8686
|
||||
const ANALOG_L_ANY: StringName = &"⇱"
|
||||
const ANALOG_L_ANY_INT: int = 8689
|
||||
const ANALOG_R_ANY: StringName = &"⇲"
|
||||
const ANALOG_R_ANY_INT: int = 8690
|
||||
const ANALOG_ANY: StringName = &"⇳"
|
||||
const ANALOG_ANY_INT: int = 8691
|
||||
const ANALOG_R_UP_DOWN: StringName = &"⇵"
|
||||
const ANALOG_R_UP_DOWN_INT: int = 8693
|
||||
const GAMEPAD_SELECT: StringName = &"⇷"
|
||||
const GAMEPAD_SELECT_INT: int = 8695
|
||||
const GAMEPAD_START: StringName = &"⇸"
|
||||
const GAMEPAD_START_INT: int = 8696
|
||||
const GAMEPAD_HOME: StringName = &"⇹"
|
||||
const GAMEPAD_HOME_INT: int = 8697
|
||||
const XBOX_VIEW: StringName = &"⇺"
|
||||
const XBOX_VIEW_INT: int = 8698
|
||||
const XBOX_MENU: StringName = &"⇻"
|
||||
const XBOX_MENU_INT: int = 8699
|
||||
const NINTENDO_MINUS: StringName = &"⇽"
|
||||
const NINTENDO_MINUS_INT: int = 8701
|
||||
const NINTENDO_PLUS: StringName = &"⇾"
|
||||
const NINTENDO_PLUS_INT: int = 8702
|
||||
const NINTENDO_DPAD_LEFT: StringName = &"⇿"
|
||||
const NINTENDO_DPAD_LEFT_INT: int = 8703
|
||||
const NINTENDO_DPAD_UP: StringName = &"∀"
|
||||
const NINTENDO_DPAD_UP_INT: int = 8704
|
||||
const NINTENDO_DPAD_RIGHT: StringName = &"∁"
|
||||
const NINTENDO_DPAD_RIGHT_INT: int = 8705
|
||||
const NINTENDO_DPAD_DOWN: StringName = &"∂"
|
||||
const NINTENDO_DPAD_DOWN_INT: int = 8706
|
||||
const NINTENDO_JOYCON_SL: StringName = &"∃"
|
||||
const NINTENDO_JOYCON_SL_INT: int = 8707
|
||||
const NINTENDO_JOYCON_SR: StringName = &"∄"
|
||||
const NINTENDO_JOYCON_SR_INT: int = 8708
|
||||
const LEGION_SETTINGS: StringName = &"∅"
|
||||
const LEGION_SETTINGS_INT: int = 8709
|
||||
const SONY_DUALSENSE_SHARE: StringName = &"∆"
|
||||
const SONY_DUALSENSE_SHARE_INT: int = 8710
|
||||
const SONY_DUALSENSE_TOUCHPAD: StringName = &"∇"
|
||||
const SONY_DUALSENSE_TOUCHPAD_INT: int = 8711
|
||||
const SONY_DUALSENSE_OPTIONS: StringName = &"∈"
|
||||
const SONY_DUALSENSE_OPTIONS_INT: int = 8712
|
||||
const AYANEO_LC: StringName = &"∉"
|
||||
const AYANEO_LC_INT: int = 8713
|
||||
const AYANEO_RC: StringName = &"∊"
|
||||
const AYANEO_RC_INT: int = 8714
|
||||
const AYANEO_WAVE: StringName = &"∋"
|
||||
const AYANEO_WAVE_INT: int = 8715
|
||||
const AYN_HOME: StringName = &"∌"
|
||||
const AYN_HOME_INT: int = 8716
|
||||
const AYN_LCC: StringName = &"∍"
|
||||
const AYN_LCC_INT: int = 8717
|
||||
const GPD_C1: StringName = &"∎"
|
||||
const GPD_C1_INT: int = 8718
|
||||
const GPD_C2: StringName = &"∏"
|
||||
const GPD_C2_INT: int = 8719
|
||||
const ONEXPLAYER_KEYBOARD: StringName = &"∐"
|
||||
const ONEXPLAYER_KEYBOARD_INT: int = 8720
|
||||
const ONEXPLAYER_TURBO: StringName = &"∑"
|
||||
const ONEXPLAYER_TURBO_INT: int = 8721
|
||||
const GAMEPAD_M1: StringName = &"−"
|
||||
const GAMEPAD_M1_INT: int = 8722
|
||||
const GAMEPAD_M2: StringName = &"∓"
|
||||
const GAMEPAD_M2_INT: int = 8723
|
||||
const GAMEPAD_M3: StringName = &"∔"
|
||||
const GAMEPAD_M3_INT: int = 8724
|
||||
const GAMEPAD_Y1: StringName = &"∕"
|
||||
const GAMEPAD_Y1_INT: int = 8725
|
||||
const GAMEPAD_Y2: StringName = &"∖"
|
||||
const GAMEPAD_Y2_INT: int = 8726
|
||||
const GAMEPAD_Y3: StringName = &"∗"
|
||||
const GAMEPAD_Y3_INT: int = 8727
|
||||
const ONEXPLAYER_FUNCTION: StringName = &"∘"
|
||||
const ONEXPLAYER_FUNCTION_INT: int = 8728
|
||||
const ONEXPLAYER_HOME: StringName = &"∙"
|
||||
const ONEXPLAYER_HOME_INT: int = 8729
|
||||
const GPD_MENU: StringName = &"√"
|
||||
const GPD_MENU_INT: int = 8730
|
||||
const ORANGEPI_CONTROLLER: StringName = &"∛"
|
||||
const ORANGEPI_CONTROLLER_INT: int = 8731
|
||||
const ORANGEPI_HOME: StringName = &"∜"
|
||||
const ORANGEPI_HOME_INT: int = 8732
|
||||
const ZOTAC_ZONE_LOGO: StringName = &"∝"
|
||||
const ZOTAC_ZONE_LOGO_INT: int = 8733
|
||||
const ZOTAC_ZONE_MENU: StringName = &"∞"
|
||||
const ZOTAC_ZONE_MENU_INT: int = 8734
|
||||
const GAMEPAD_X_B: StringName = &"∥"
|
||||
const GAMEPAD_X_B_INT: int = 8741
|
||||
const GAMEPAD_A_Y: StringName = &"∦"
|
||||
const GAMEPAD_A_Y_INT: int = 8742
|
||||
const GAMEPAD_X_Y: StringName = &"∧"
|
||||
const GAMEPAD_X_Y_INT: int = 8743
|
||||
const GAMEPAD_B_Y: StringName = &"∨"
|
||||
const GAMEPAD_B_Y_INT: int = 8744
|
||||
const GAMEPAD_A_B: StringName = &"∩"
|
||||
const GAMEPAD_A_B_INT: int = 8745
|
||||
const GAMEPAD_X_A: StringName = &"∪"
|
||||
const GAMEPAD_X_A_INT: int = 8746
|
||||
const BUTTON_PRESS: StringName = &"∫"
|
||||
const BUTTON_PRESS_INT: int = 8747
|
||||
const BUTTON_DOUBLE_PRESS: StringName = &"∬"
|
||||
const BUTTON_DOUBLE_PRESS_INT: int = 8748
|
||||
const BUTTON_HOLD_PRESS: StringName = &"∭"
|
||||
const BUTTON_HOLD_PRESS_INT: int = 8749
|
||||
const BUTTON_HOLD_RELEASE: StringName = &"∮"
|
||||
const BUTTON_HOLD_RELEASE_INT: int = 8750
|
||||
const BUTTON_HOLD: StringName = &"∯"
|
||||
const BUTTON_HOLD_INT: int = 8751
|
||||
const TRACKPAD_L_ANY: StringName = &"≤"
|
||||
const TRACKPAD_L_ANY_INT: int = 8804
|
||||
const TRACKPAD_R_ANY: StringName = &"≥"
|
||||
const TRACKPAD_R_ANY_INT: int = 8805
|
||||
const TRACKPAD_L_CLICK: StringName = &"≦"
|
||||
const TRACKPAD_L_CLICK_INT: int = 8806
|
||||
const TRACKPAD_R_CLICK: StringName = &"≧"
|
||||
const TRACKPAD_R_CLICK_INT: int = 8807
|
||||
const TRACKPAD_L_TOUCH: StringName = &"≨"
|
||||
const TRACKPAD_L_TOUCH_INT: int = 8808
|
||||
const TRACKPAD_R_TOUCH: StringName = &"≩"
|
||||
const TRACKPAD_R_TOUCH_INT: int = 8809
|
||||
const TRACKPAD_L_LEFT_RIGHT: StringName = &"≪"
|
||||
const TRACKPAD_L_LEFT_RIGHT_INT: int = 8810
|
||||
const TRACKPAD_L_UP_DOWN: StringName = &"≫"
|
||||
const TRACKPAD_L_UP_DOWN_INT: int = 8811
|
||||
const TRACKPAD_R_LEFT_RIGHT: StringName = &"≬"
|
||||
const TRACKPAD_R_LEFT_RIGHT_INT: int = 8812
|
||||
const TRACKPAD_R_UP_DOWN: StringName = &"≭"
|
||||
const TRACKPAD_R_UP_DOWN_INT: int = 8813
|
||||
const TRACKPAD_L_LEFT: StringName = &"≮"
|
||||
const TRACKPAD_L_LEFT_INT: int = 8814
|
||||
const TRACKPAD_R_LEFT: StringName = &"≯"
|
||||
const TRACKPAD_R_LEFT_INT: int = 8815
|
||||
const TRACKPAD_L_UP: StringName = &"≰"
|
||||
const TRACKPAD_L_UP_INT: int = 8816
|
||||
const TRACKPAD_R_UP: StringName = &"≱"
|
||||
const TRACKPAD_R_UP_INT: int = 8817
|
||||
const TRACKPAD_L_RIGHT: StringName = &"≲"
|
||||
const TRACKPAD_L_RIGHT_INT: int = 8818
|
||||
const TRACKPAD_R_RIGHT: StringName = &"≳"
|
||||
const TRACKPAD_R_RIGHT_INT: int = 8819
|
||||
const TRACKPAD_L_DOWN: StringName = &"≴"
|
||||
const TRACKPAD_L_DOWN_INT: int = 8820
|
||||
const TRACKPAD_R_DOWN: StringName = &"≵"
|
||||
const TRACKPAD_R_DOWN_INT: int = 8821
|
||||
const GAMEPAD_L4: StringName = &"≶"
|
||||
const GAMEPAD_L4_INT: int = 8822
|
||||
const GAMEPAD_R4: StringName = &"≷"
|
||||
const GAMEPAD_R4_INT: int = 8823
|
||||
const GAMEPAD_L5: StringName = &"≸"
|
||||
const GAMEPAD_L5_INT: int = 8824
|
||||
const GAMEPAD_R5: StringName = &"≹"
|
||||
const GAMEPAD_R5_INT: int = 8825
|
||||
const XBOX_DPAD_LEFT: StringName = &"≺"
|
||||
const XBOX_DPAD_LEFT_INT: int = 8826
|
||||
const XBOX_DPAD_UP: StringName = &"≻"
|
||||
const XBOX_DPAD_UP_INT: int = 8827
|
||||
const XBOX_DPAD_RIGHT: StringName = &"≼"
|
||||
const XBOX_DPAD_RIGHT_INT: int = 8828
|
||||
const XBOX_DPAD_DOWN: StringName = &"≽"
|
||||
const XBOX_DPAD_DOWN_INT: int = 8829
|
||||
const XBOX_DEPAD_LEFT_RIGHT: StringName = &"≾"
|
||||
const XBOX_DEPAD_LEFT_RIGHT_INT: int = 8830
|
||||
const XBOX_DPAD_UP_DOWN: StringName = &"≿"
|
||||
const XBOX_DPAD_UP_DOWN_INT: int = 8831
|
||||
const XBOX_DPAD_LEFT_UP: StringName = &"⊀"
|
||||
const XBOX_DPAD_LEFT_UP_INT: int = 8832
|
||||
const XBOX_DPAD_RIGHT_UP: StringName = &"⊁"
|
||||
const XBOX_DPAD_RIGHT_UP_INT: int = 8833
|
||||
const XBOX_DPAD_LEFT_DOWN: StringName = &"⊂"
|
||||
const XBOX_DPAD_LEFT_DOWN_INT: int = 8834
|
||||
const XBOX_DPAD_RIGHT_DOWN: StringName = &"⊃"
|
||||
const XBOX_DPAD_RIGHT_DOWN_INT: int = 8835
|
||||
const XBOX_DPAD: StringName = &"⊄"
|
||||
const XBOX_DPAD_INT: int = 8836
|
||||
const ICON_PIN: StringName = &"⌖"
|
||||
const ICON_PIN_INT: int = 8982
|
||||
const ANDROID_TABS: StringName = &"⏍"
|
||||
const ANDROID_TABS_INT: int = 9165
|
||||
const ANDROID_BACK: StringName = &"⏎"
|
||||
const ANDROID_BACK_INT: int = 9166
|
||||
const ANDROID_HOME: StringName = &"⏏"
|
||||
const ANDROID_HOME_INT: int = 9167
|
||||
const ANDROID_HORIZONTAL_DOTS: StringName = &"⏐"
|
||||
const ANDROID_HORIZONTAL_DOTS_INT: int = 9168
|
||||
const ANDROID_VERTICAL_DOTS: StringName = &"⏑"
|
||||
const ANDROID_VERTICAL_DOTS_INT: int = 9169
|
||||
const ANDROID_HAMBURGER_MENU: StringName = &"⏒"
|
||||
const ANDROID_HAMBURGER_MENU_INT: int = 9170
|
||||
const KEYBOARD_LEFT: StringName = &"⏴"
|
||||
const KEYBOARD_LEFT_INT: int = 9204
|
||||
const KEYBOARD_UP: StringName = &"⏵"
|
||||
const KEYBOARD_UP_INT: int = 9205
|
||||
const KEYBOARD_RIGHT: StringName = &"⏶"
|
||||
const KEYBOARD_RIGHT_INT: int = 9206
|
||||
const KEYBOARD_DOWN: StringName = &"⏷"
|
||||
const KEYBOARD_DOWN_INT: int = 9207
|
||||
const KEYBOARD_WASD: StringName = &"␣"
|
||||
const KEYBOARD_WASD_INT: int = 9251
|
||||
const KEYBOARD_ARROWS: StringName = &""
|
||||
const KEYBOARD_ARROWS_INT: int = 9252
|
||||
const KEYBOARD_IJKL: StringName = &"␥"
|
||||
const KEYBOARD_IJKL_INT: int = 9253
|
||||
const KEYBOARD_FN: StringName = &"␦"
|
||||
const KEYBOARD_FN_INT: int = 9254
|
||||
const KEYBOARD_CONTROL: StringName = &""
|
||||
const KEYBOARD_CONTROL_INT: int = 9255
|
||||
const KEYBOARD_ALT: StringName = &""
|
||||
const KEYBOARD_ALT_INT: int = 9256
|
||||
const KEYBOARD_SHIFT: StringName = &""
|
||||
const KEYBOARD_SHIFT_INT: int = 9257
|
||||
const KEYBOARD_SUPER: StringName = &""
|
||||
const KEYBOARD_SUPER_INT: int = 9258
|
||||
const KEYBOARD_TAB: StringName = &""
|
||||
const KEYBOARD_TAB_INT: int = 9259
|
||||
const KEYBOARD_CAPS: StringName = &""
|
||||
const KEYBOARD_CAPS_INT: int = 9260
|
||||
const KEYBOARD_BACKSPACE: StringName = &""
|
||||
const KEYBOARD_BACKSPACE_INT: int = 9261
|
||||
const KEYBOARD_ENTER: StringName = &""
|
||||
const KEYBOARD_ENTER_INT: int = 9262
|
||||
const KEYBOARD_ESCAPE: StringName = &""
|
||||
const KEYBOARD_ESCAPE_INT: int = 9263
|
||||
const KEYBOARD_PRINT_SCREEN: StringName = &""
|
||||
const KEYBOARD_PRINT_SCREEN_INT: int = 9264
|
||||
const KEYBOARD_SCROLL_LOCK: StringName = &""
|
||||
const KEYBOARD_SCROLL_LOCK_INT: int = 9265
|
||||
const KEYBOARD_PAUSE: StringName = &""
|
||||
const KEYBOARD_PAUSE_INT: int = 9266
|
||||
const KEYBOARD_NUM_LOCK: StringName = &""
|
||||
const KEYBOARD_NUM_LOCK_INT: int = 9267
|
||||
const KEYBOARD_INSERT: StringName = &""
|
||||
const KEYBOARD_INSERT_INT: int = 9268
|
||||
const KEYBOARD_HOME: StringName = &""
|
||||
const KEYBOARD_HOME_INT: int = 9269
|
||||
const KEYBOARD_PAGE_UP: StringName = &""
|
||||
const KEYBOARD_PAGE_UP_INT: int = 9270
|
||||
const KEYBOARD_DELETE: StringName = &""
|
||||
const KEYBOARD_DELETE_INT: int = 9271
|
||||
const KEYBOARD_END: StringName = &""
|
||||
const KEYBOARD_END_INT: int = 9272
|
||||
const KEYBOARD_PAGE_DOWN: StringName = &""
|
||||
const KEYBOARD_PAGE_DOWN_INT: int = 9273
|
||||
const KEYBOARD_SPACE: StringName = &""
|
||||
const KEYBOARD_SPACE_INT: int = 9274
|
||||
const DEVICE_GAMEPAD: StringName = &""
|
||||
const DEVICE_GAMEPAD_INT: int = 9276
|
||||
const DEVICE_KEYBOARD: StringName = &""
|
||||
const DEVICE_KEYBOARD_INT: int = 9277
|
||||
const DEVICE_MOUSE: StringName = &""
|
||||
const DEVICE_MOUSE_INT: int = 9278
|
||||
const DEVICE_MOUSE_KEYBOARD: StringName = &""
|
||||
const DEVICE_MOUSE_KEYBOARD_INT: int = 9279
|
||||
const DEVICE_DS4: StringName = &"⑀"
|
||||
const DEVICE_DS4_INT: int = 9280
|
||||
const DEVICE_DUALSENSE: StringName = &"⑁"
|
||||
const DEVICE_DUALSENSE_INT: int = 9281
|
||||
const DEVICE_X360: StringName = &"⑂"
|
||||
const DEVICE_X360_INT: int = 9282
|
||||
const KEYBOARD_ALT_GR: StringName = &"⑊"
|
||||
const KEYBOARD_ALT_GR_INT: int = 9290
|
||||
const KEYBOARD_ALT_L: StringName = &""
|
||||
const KEYBOARD_ALT_L_INT: int = 9291
|
||||
const KEYBOARD_ALT_R: StringName = &""
|
||||
const KEYBOARD_ALT_R_INT: int = 9292
|
||||
const KEYBOARD_CONTROL_L: StringName = &""
|
||||
const KEYBOARD_CONTROL_L_INT: int = 9293
|
||||
const KEYBOARD_CONTROL_R: StringName = &""
|
||||
const KEYBOARD_CONTROL_R_INT: int = 9294
|
||||
const KEYBOARD_SHIFT_L: StringName = &""
|
||||
const KEYBOARD_SHIFT_L_INT: int = 9295
|
||||
const KEYBOARD_SHIFT_R: StringName = &""
|
||||
const KEYBOARD_SHIFT_R_INT: int = 9296
|
||||
const KEYBOARD_F1: StringName = &"①"
|
||||
const KEYBOARD_F1_INT: int = 9312
|
||||
const KEYBOARD_F2: StringName = &"②"
|
||||
const KEYBOARD_F2_INT: int = 9313
|
||||
const KEYBOARD_F3: StringName = &"③"
|
||||
const KEYBOARD_F3_INT: int = 9314
|
||||
const KEYBOARD_F4: StringName = &"④"
|
||||
const KEYBOARD_F4_INT: int = 9315
|
||||
const KEYBOARD_F5: StringName = &"⑤"
|
||||
const KEYBOARD_F5_INT: int = 9316
|
||||
const KEYBOARD_F6: StringName = &"⑥"
|
||||
const KEYBOARD_F6_INT: int = 9317
|
||||
const KEYBOARD_F7: StringName = &"⑦"
|
||||
const KEYBOARD_F7_INT: int = 9318
|
||||
const KEYBOARD_F8: StringName = &"⑧"
|
||||
const KEYBOARD_F8_INT: int = 9319
|
||||
const KEYBOARD_F9: StringName = &"⑨"
|
||||
const KEYBOARD_F9_INT: int = 9320
|
||||
const KEYBOARD_F10: StringName = &"⑩"
|
||||
const KEYBOARD_F10_INT: int = 9321
|
||||
const KEYBOARD_F11: StringName = &"⑪"
|
||||
const KEYBOARD_F11_INT: int = 9322
|
||||
const KEYBOARD_F12: StringName = &"⑫"
|
||||
const KEYBOARD_F12_INT: int = 9323
|
||||
const KEYBOARD_KEY: StringName = &"⒏"
|
||||
const KEYBOARD_KEY_INT: int = 9359
|
||||
const ICON_1: StringName = &"⓵"
|
||||
const ICON_1_INT: int = 9461
|
||||
const ICON_2: StringName = &"⓶"
|
||||
const ICON_2_INT: int = 9462
|
||||
const ICON_3: StringName = &"⓷"
|
||||
const ICON_3_INT: int = 9463
|
||||
const ICON_4: StringName = &"⓸"
|
||||
const ICON_4_INT: int = 9464
|
||||
const ICON_5: StringName = &"⓹"
|
||||
const ICON_5_INT: int = 9465
|
||||
const ICON_6: StringName = &"⓺"
|
||||
const ICON_6_INT: int = 9466
|
||||
const ICON_7: StringName = &"⓻"
|
||||
const ICON_7_INT: int = 9467
|
||||
const ICON_8: StringName = &"⓼"
|
||||
const ICON_8_INT: int = 9468
|
||||
const ICON_9: StringName = &"⓽"
|
||||
const ICON_9_INT: int = 9469
|
||||
const ICON_0: StringName = &"⓿"
|
||||
const ICON_0_INT: int = 9471
|
||||
const ICON_STAR: StringName = &"★"
|
||||
const ICON_STAR_INT: int = 9733
|
||||
const ICON_EMPTY_STAR: StringName = &"☆"
|
||||
const ICON_EMPTY_STAR_INT: int = 9734
|
||||
const ICON_SKULL: StringName = &"☠"
|
||||
const ICON_SKULL_INT: int = 9760
|
||||
const ICON_FROWN: StringName = &"☹"
|
||||
const ICON_FROWN_INT: int = 9785
|
||||
const ICON_SMILE: StringName = &"☺"
|
||||
const ICON_SMILE_INT: int = 9786
|
||||
const ICON_FULL_SPADE: StringName = &"♠"
|
||||
const ICON_FULL_SPADE_INT: int = 9824
|
||||
const ICON_EMPTY_HEART: StringName = &"♡"
|
||||
const ICON_EMPTY_HEART_INT: int = 9825
|
||||
const ICON_EMPTY_DIAMOND: StringName = &"♢"
|
||||
const ICON_EMPTY_DIAMOND_INT: int = 9826
|
||||
const ICON_FULL_CLUB: StringName = &"♣"
|
||||
const ICON_FULL_CLUB_INT: int = 9827
|
||||
const ICON_EMPTY_SPADE: StringName = &"♤"
|
||||
const ICON_EMPTY_SPADE_INT: int = 9828
|
||||
const ICON_FULL_HEART: StringName = &"♥"
|
||||
const ICON_FULL_HEART_INT: int = 9829
|
||||
const ICON_FULL_DIAMOND: StringName = &"♦"
|
||||
const ICON_FULL_DIAMOND_INT: int = 9830
|
||||
const ICON_EMPTY_CLUB: StringName = &"♧"
|
||||
const ICON_EMPTY_CLUB_INT: int = 9831
|
||||
const ICON_D4: StringName = &"♳"
|
||||
const ICON_D4_INT: int = 9843
|
||||
const ICON_D6: StringName = &"♴"
|
||||
const ICON_D6_INT: int = 9844
|
||||
const ICON_D8: StringName = &"♵"
|
||||
const ICON_D8_INT: int = 9845
|
||||
const ICON_D10: StringName = &"♶"
|
||||
const ICON_D10_INT: int = 9846
|
||||
const ICON_D12: StringName = &"♷"
|
||||
const ICON_D12_INT: int = 9847
|
||||
const ICON_D20: StringName = &"♸"
|
||||
const ICON_D20_INT: int = 9848
|
||||
const ICON_D6_1: StringName = &"⚀"
|
||||
const ICON_D6_1_INT: int = 9856
|
||||
const ICON_D6_2: StringName = &"⚁"
|
||||
const ICON_D6_2_INT: int = 9857
|
||||
const ICON_D6_3: StringName = &"⚂"
|
||||
const ICON_D6_3_INT: int = 9858
|
||||
const ICON_D6_4: StringName = &"⚃"
|
||||
const ICON_D6_4_INT: int = 9859
|
||||
const ICON_D6_5: StringName = &"⚄"
|
||||
const ICON_D6_5_INT: int = 9860
|
||||
const ICON_D6_6: StringName = &"⚅"
|
||||
const ICON_D6_6_INT: int = 9861
|
||||
const ICON_FLAG: StringName = &"⚑"
|
||||
const ICON_FLAG_INT: int = 9873
|
||||
const ICON_GEARS: StringName = &"⚙"
|
||||
const ICON_GEARS_INT: int = 9881
|
||||
const ICON_CROSS: StringName = &"✗"
|
||||
const ICON_CROSS_INT: int = 10007
|
||||
const ICON_QUESTION: StringName = &"❓"
|
||||
const ICON_QUESTION_INT: int = 10067
|
||||
const ICON_BANG: StringName = &"❗"
|
||||
const ICON_BANG_INT: int = 10071
|
||||
const MOUSE_1: StringName = &"➊"
|
||||
const MOUSE_1_INT: int = 10122
|
||||
const MOUSE_2: StringName = &"➋"
|
||||
const MOUSE_2_INT: int = 10123
|
||||
const MOUSE_3: StringName = &"➌"
|
||||
const MOUSE_3_INT: int = 10124
|
||||
const MOUSE_4: StringName = &"➍"
|
||||
const MOUSE_4_INT: int = 10125
|
||||
const MOUSE_5: StringName = &"➎"
|
||||
const MOUSE_5_INT: int = 10126
|
||||
const MOUSE_6: StringName = &"➏"
|
||||
const MOUSE_6_INT: int = 10127
|
||||
const MOUSE_7: StringName = &"➐"
|
||||
const MOUSE_7_INT: int = 10128
|
||||
const MOUSE_8: StringName = &"➑"
|
||||
const MOUSE_8_INT: int = 10129
|
||||
const MOUSE_SCROLL_UP: StringName = &"⟰"
|
||||
const MOUSE_SCROLL_UP_INT: int = 10224
|
||||
const MOUSE_SCROLL_DOWN: StringName = &"⟱"
|
||||
const MOUSE_SCROLL_DOWN_INT: int = 10225
|
||||
const MOUSE_LEFT: StringName = &"⟵"
|
||||
const MOUSE_LEFT_INT: int = 10229
|
||||
const MOUSE_RIGHT: StringName = &"⟶"
|
||||
const MOUSE_RIGHT_INT: int = 10230
|
||||
const MOUSE_MIDDLE: StringName = &"⟷"
|
||||
const MOUSE_MIDDLE_INT: int = 10231
|
||||
const MOUSE_LEFT_RIGHT: StringName = &"⟺"
|
||||
const MOUSE_LEFT_RIGHT_INT: int = 10234
|
||||
const MOUSE_UP_DOWN: StringName = &"⟻"
|
||||
const MOUSE_UP_DOWN_INT: int = 10235
|
||||
const MOUSE_ANY: StringName = &"⟼"
|
||||
const MOUSE_ANY_INT: int = 10236
|
||||
const ICON_BOX: StringName = &"⬛"
|
||||
const ICON_BOX_INT: int = 11035
|
||||
const ICON_PLAYSTATION: StringName = &""
|
||||
const ICON_PLAYSTATION_INT: int = 57344
|
||||
const ICON_XBOX: StringName = &""
|
||||
const ICON_XBOX_INT: int = 57345
|
||||
const ICON_NINTENDO_SWITCH: StringName = &""
|
||||
const ICON_NINTENDO_SWITCH_INT: int = 57346
|
||||
const ICON_AYANEO: StringName = &""
|
||||
const ICON_AYANEO_INT: int = 57347
|
||||
const ICON_LENOVO_LEGION: StringName = &""
|
||||
const ICON_LENOVO_LEGION_INT: int = 57348
|
||||
const ROG_ALLY_ARMOURY: StringName = &""
|
||||
const ROG_ALLY_ARMOURY_INT: int = 57349
|
||||
const ROG_ALLY_COMMAND: StringName = &""
|
||||
const ROG_ALLY_COMMAND_INT: int = 57350
|
||||
const ICON_MAC: StringName = &""
|
||||
const ICON_MAC_INT: int = 57351
|
||||
const ICON_WINDOWS: StringName = &""
|
||||
const ICON_WINDOWS_INT: int = 57352
|
||||
const ICON_LINUX: StringName = &""
|
||||
const ICON_LINUX_INT: int = 57353
|
||||
const ICON_BSD: StringName = &""
|
||||
const ICON_BSD_INT: int = 57354
|
||||
const ICON_STEAM: StringName = &""
|
||||
const ICON_STEAM_INT: int = 57355
|
||||
const ICON_ITCH_IO: StringName = &""
|
||||
const ICON_ITCH_IO_INT: int = 57356
|
||||
const ICON_HUMBLE: StringName = &""
|
||||
const ICON_HUMBLE_INT: int = 57357
|
||||
const ICON_EPIC_GAME_STORE: StringName = &""
|
||||
const ICON_EPIC_GAME_STORE_INT: int = 57358
|
||||
const ICON_GOOD_OLD_GAMES: StringName = &""
|
||||
const ICON_GOOD_OLD_GAMES_INT: int = 57359
|
||||
const MSI_CLAW_CENTER: StringName = &""
|
||||
const MSI_CLAW_CENTER_INT: int = 57360
|
||||
const MSI_CLAW_QUICK: StringName = &""
|
||||
const MSI_CLAW_QUICK_INT: int = 57361
|
||||
const KEYBOARD_0: StringName = &"0"
|
||||
const KEYBOARD_0_INT: int = 65296
|
||||
const KEYBOARD_1: StringName = &"1"
|
||||
const KEYBOARD_1_INT: int = 65297
|
||||
const KEYBOARD_2: StringName = &"2"
|
||||
const KEYBOARD_2_INT: int = 65298
|
||||
const KEYBOARD_3: StringName = &"3"
|
||||
const KEYBOARD_3_INT: int = 65299
|
||||
const KEYBOARD_4: StringName = &"4"
|
||||
const KEYBOARD_4_INT: int = 65300
|
||||
const KEYBOARD_5: StringName = &"5"
|
||||
const KEYBOARD_5_INT: int = 65301
|
||||
const KEYBOARD_6: StringName = &"6"
|
||||
const KEYBOARD_6_INT: int = 65302
|
||||
const KEYBOARD_7: StringName = &"7"
|
||||
const KEYBOARD_7_INT: int = 65303
|
||||
const KEYBOARD_8: StringName = &"8"
|
||||
const KEYBOARD_8_INT: int = 65304
|
||||
const KEYBOARD_9: StringName = &"9"
|
||||
const KEYBOARD_9_INT: int = 65305
|
||||
const KEYBOARD_A: StringName = &"A"
|
||||
const KEYBOARD_A_INT: int = 65313
|
||||
const KEYBOARD_B: StringName = &"B"
|
||||
const KEYBOARD_B_INT: int = 65314
|
||||
const KEYBOARD_C: StringName = &"C"
|
||||
const KEYBOARD_C_INT: int = 65315
|
||||
const KEYBOARD_D: StringName = &"D"
|
||||
const KEYBOARD_D_INT: int = 65316
|
||||
const KEYBOARD_E: StringName = &"E"
|
||||
const KEYBOARD_E_INT: int = 65317
|
||||
const KEYBOARD_F: StringName = &"F"
|
||||
const KEYBOARD_F_INT: int = 65318
|
||||
const KEYBOARD_G: StringName = &"G"
|
||||
const KEYBOARD_G_INT: int = 65319
|
||||
const KEYBOARD_H: StringName = &"H"
|
||||
const KEYBOARD_H_INT: int = 65320
|
||||
const KEYBOARD_I: StringName = &"I"
|
||||
const KEYBOARD_I_INT: int = 65321
|
||||
const KEYBOARD_J: StringName = &"J"
|
||||
const KEYBOARD_J_INT: int = 65322
|
||||
const KEYBOARD_K: StringName = &"K"
|
||||
const KEYBOARD_K_INT: int = 65323
|
||||
const KEYBOARD_L: StringName = &"L"
|
||||
const KEYBOARD_L_INT: int = 65324
|
||||
const KEYBOARD_M: StringName = &"M"
|
||||
const KEYBOARD_M_INT: int = 65325
|
||||
const KEYBOARD_N: StringName = &"N"
|
||||
const KEYBOARD_N_INT: int = 65326
|
||||
const KEYBOARD_O: StringName = &"O"
|
||||
const KEYBOARD_O_INT: int = 65327
|
||||
const KEYBOARD_P: StringName = &"P"
|
||||
const KEYBOARD_P_INT: int = 65328
|
||||
const KEYBOARD_Q: StringName = &"Q"
|
||||
const KEYBOARD_Q_INT: int = 65329
|
||||
const KEYBOARD_R: StringName = &"R"
|
||||
const KEYBOARD_R_INT: int = 65330
|
||||
const KEYBOARD_S: StringName = &"S"
|
||||
const KEYBOARD_S_INT: int = 65331
|
||||
const KEYBOARD_T: StringName = &"T"
|
||||
const KEYBOARD_T_INT: int = 65332
|
||||
const KEYBOARD_U: StringName = &"U"
|
||||
const KEYBOARD_U_INT: int = 65333
|
||||
const KEYBOARD_V: StringName = &"V"
|
||||
const KEYBOARD_V_INT: int = 65334
|
||||
const KEYBOARD_W: StringName = &"W"
|
||||
const KEYBOARD_W_INT: int = 65335
|
||||
const KEYBOARD_X: StringName = &"X"
|
||||
const KEYBOARD_X_INT: int = 65336
|
||||
const KEYBOARD_Y: StringName = &"Y"
|
||||
const KEYBOARD_Y_INT: int = 65337
|
||||
const KEYBOARD_Z: StringName = &"Z"
|
||||
const KEYBOARD_Z_INT: int = 65338
|
||||
const ICON_HEADPHONES: StringName = &"🎧"
|
||||
const ICON_HEADPHONES_INT: int = 127911
|
||||
const ICON_MUSIC: StringName = &"🎶"
|
||||
const ICON_MUSIC_INT: int = 127926
|
||||
const ICON_FISH: StringName = &"🐟"
|
||||
const ICON_FISH_INT: int = 128031
|
||||
const DEVICE_DANCE_PAD: StringName = &"💃"
|
||||
const DEVICE_DANCE_PAD_INT: int = 128131
|
||||
const ICON_LAPTOP: StringName = &"💻"
|
||||
const ICON_LAPTOP_INT: int = 128187
|
||||
const ICON_DISKETTE: StringName = &"💾"
|
||||
const ICON_DISKETTE_INT: int = 128190
|
||||
const ICON_WRITE: StringName = &"📝"
|
||||
const ICON_WRITE_INT: int = 128221
|
||||
const DEVICE_PHONE: StringName = &"📱"
|
||||
const DEVICE_PHONE_INT: int = 128241
|
||||
const ICON_CAMERA: StringName = &"📷"
|
||||
const ICON_CAMERA_INT: int = 128247
|
||||
const ICON_SPEAKER: StringName = &"🔈"
|
||||
const ICON_SPEAKER_INT: int = 128264
|
||||
const DEVICE_LIGHT_GUN: StringName = &"🔫"
|
||||
const DEVICE_LIGHT_GUN_INT: int = 128299
|
||||
const ICON_NOISE: StringName = &"🕬"
|
||||
const ICON_NOISE_INT: int = 128364
|
||||
const DEVICE_STEERING_WHEEL: StringName = &"🕸"
|
||||
const DEVICE_STEERING_WHEEL_INT: int = 128376
|
||||
const DEVICE_JOY_STICK: StringName = &"🕹"
|
||||
const DEVICE_JOY_STICK_INT: int = 128377
|
||||
const DEVICE_VR_HEADSET: StringName = &"🕻"
|
||||
const DEVICE_VR_HEADSET_INT: int = 128379
|
||||
const DEVICE_VR_CONTROLLER: StringName = &"🕼"
|
||||
const DEVICE_VR_CONTROLLER_INT: int = 128380
|
||||
const DEVICE_FLIGHT_STICK: StringName = &"🕽"
|
||||
const DEVICE_FLIGHT_STICK_INT: int = 128381
|
||||
const ICON_PROCESSOR: StringName = &"🖥"
|
||||
const ICON_PROCESSOR_INT: int = 128421
|
||||
const ICON_INTERNET: StringName = &"🖧"
|
||||
const ICON_INTERNET_INT: int = 128423
|
||||
const ICON_GRAPHICS_CARD: StringName = &"🖨"
|
||||
const ICON_GRAPHICS_CARD_INT: int = 128424
|
||||
const ICON_MEMORY: StringName = &"🖪"
|
||||
const ICON_MEMORY_INT: int = 128426
|
||||
const ICON_USB_STICK: StringName = &"🖫"
|
||||
const ICON_USB_STICK_INT: int = 128427
|
||||
const ICON_DATABASE: StringName = &"🖬"
|
||||
const ICON_DATABASE_INT: int = 128428
|
||||
const ICON_HARD_DISK: StringName = &"🖴"
|
||||
const ICON_HARD_DISK_INT: int = 128436
|
||||
const ICON_SCREEN: StringName = &"🖵"
|
||||
const ICON_SCREEN_INT: int = 128437
|
||||
const ICON_TEXT_ENTRY: StringName = &"🖹"
|
||||
const ICON_TEXT_ENTRY_INT: int = 128441
|
||||
const ICON_SPEAK: StringName = &"🗣"
|
||||
const ICON_SPEAK_INT: int = 128483
|
||||
const ICON_LANGUAGE: StringName = &"🗩"
|
||||
const ICON_LANGUAGE_INT: int = 128489
|
||||
const ICON_EXIT: StringName = &"🚪"
|
||||
const ICON_EXIT_INT: int = 128682
|
||||
const ICON_INFORMATION: StringName = &"🛈"
|
||||
const ICON_INFORMATION_INT: int = 128712
|
||||
const ICON_SHOPPING_CART: StringName = &"🛒"
|
||||
const ICON_SHOPPING_CART_INT: int = 128722
|
||||
|
||||
static var promptfont: PromptFont
|
||||
|
||||
|
||||
static func _static_init() -> void:
|
||||
promptfont = PromptFont.new()
|
||||
|
||||
|
||||
static func get_str(name: StringName) -> StringName:
|
||||
return promptfont.get(name)
|
||||
|
||||
|
||||
static func get_int(name: StringName) -> int:
|
||||
return promptfont.get(name + "_INT")
|
Binary file not shown.
|
@ -1,34 +0,0 @@
|
|||
[remap]
|
||||
|
||||
importer="font_data_dynamic"
|
||||
type="FontFile"
|
||||
uid="uid://dyog4ex5nqfat"
|
||||
path="res://.godot/imported/promptfont.otf-be4e68f585432fa59d03181ca09a9538.fontdata"
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://assets/fonts/promptfont/promptfont.otf"
|
||||
dest_files=["res://.godot/imported/promptfont.otf-be4e68f585432fa59d03181ca09a9538.fontdata"]
|
||||
|
||||
[params]
|
||||
|
||||
Rendering=null
|
||||
antialiasing=1
|
||||
generate_mipmaps=true
|
||||
disable_embedded_bitmaps=true
|
||||
multichannel_signed_distance_field=false
|
||||
msdf_pixel_range=8
|
||||
msdf_size=48
|
||||
allow_system_fallback=true
|
||||
force_autohinter=false
|
||||
hinting=1
|
||||
subpixel_positioning=1
|
||||
oversampling=0.0
|
||||
Fallbacks=null
|
||||
fallbacks=[]
|
||||
Compress=null
|
||||
compress=true
|
||||
preload=[]
|
||||
language_support={}
|
||||
script_support={}
|
||||
opentype_features={}
|
|
@ -21,7 +21,7 @@ compress/lossy_quality=0.7
|
|||
compress/hdr_compression=1
|
||||
compress/normal_map=0
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=true
|
||||
mipmaps/generate=false
|
||||
mipmaps/limit=-1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
|
@ -31,4 +31,4 @@ process/normal_map_invert_y=false
|
|||
process/hdr_as_srgb=false
|
||||
process/hdr_clamp_exposure=false
|
||||
process/size_limit=0
|
||||
detect_3d/compress_to=0
|
||||
detect_3d/compress_to=1
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
[gd_scene load_steps=61 format=3 uid="uid://bm2o3mex10v11"]
|
||||
[gd_scene load_steps=37 format=3 uid="uid://bm2o3mex10v11"]
|
||||
|
||||
[ext_resource type="Terrain3DAssets" uid="uid://cwl34gstabgrx" path="res://levels/debug_level/terrain_assets.res" id="1_5smdk"]
|
||||
[ext_resource type="Shader" path="res://src/shaders/psx_water.gdshader" id="6_0efu4"]
|
||||
|
@ -10,13 +10,9 @@
|
|||
[ext_resource type="PackedScene" uid="uid://di7aql54lksn7" path="res://src/props/scenery/trees/palm_tree/palm_tree.tscn" id="12_sswxf"]
|
||||
[ext_resource type="PackedScene" uid="uid://c7l58wuuahn7w" path="res://src/props/flag/flag.tscn" id="13_6jtao"]
|
||||
[ext_resource type="PackedScene" uid="uid://cl0goj38u7r72" path="res://src/props/scenery/beach/sailboat.tscn" id="14_6reiy"]
|
||||
[ext_resource type="PackedScene" uid="uid://dwfckgdxnwwru" path="res://src/world/effects/zephyr/zephyr_particle.tscn" id="16_2kyww"]
|
||||
[ext_resource type="Texture2D" uid="uid://du3vk5nnksohs" path="res://assets/sprites/particles/sparkle.png" id="16_2m5yu"]
|
||||
[ext_resource type="Shader" path="res://src/shaders/frosted_glass.gdshader" id="16_rat2n"]
|
||||
[ext_resource type="PackedScene" uid="uid://nqar1qcun8ax" path="res://src/props/scenery/highway/guard_rail/guard_rail.tscn" id="16_xtxyj"]
|
||||
[ext_resource type="PackedScene" uid="uid://d0tcr6uijpym5" path="res://src/props/scenery/highway/highway_road.tscn" id="17_amems"]
|
||||
[ext_resource type="Texture2D" uid="uid://bq8dxuxfw1rwu" path="res://assets/textures/wood/lacquered_planks.png" id="17_xciuf"]
|
||||
[ext_resource type="Texture2D" path="res://assets/textures/grass_green/grass_green_albedo.dds" id="18_scall"]
|
||||
[ext_resource type="PackedScene" uid="uid://cblsayfgirexr" path="res://src/characters/umineko/umineko.tscn" id="21_ch6qk"]
|
||||
|
||||
[sub_resource type="FastNoiseLite" id="FastNoiseLite_rpgb7"]
|
||||
|
@ -188,112 +184,6 @@ _data = {
|
|||
}
|
||||
point_count = 5
|
||||
|
||||
[sub_resource type="FastNoiseLite" id="FastNoiseLite_h2ddb"]
|
||||
|
||||
[sub_resource type="NoiseTexture2D" id="NoiseTexture2D_b16ga"]
|
||||
seamless = true
|
||||
as_normal_map = true
|
||||
noise = SubResource("FastNoiseLite_h2ddb")
|
||||
|
||||
[sub_resource type="FastNoiseLite" id="FastNoiseLite_cct0w"]
|
||||
|
||||
[sub_resource type="NoiseTexture2D" id="NoiseTexture2D_qd4od"]
|
||||
seamless = true
|
||||
noise = SubResource("FastNoiseLite_cct0w")
|
||||
|
||||
[sub_resource type="ShaderMaterial" id="ShaderMaterial_lwas5"]
|
||||
render_priority = 0
|
||||
shader = ExtResource("16_rat2n")
|
||||
shader_parameter/albedo = Color(0.263625, 0.1147, 0.37, 0.572549)
|
||||
shader_parameter/roughness = 0.2
|
||||
shader_parameter/refraction = 0.200001
|
||||
shader_parameter/refraction_texture_channel = Vector4(1, 0, 0, 0)
|
||||
shader_parameter/normal_strength = 0.552001
|
||||
shader_parameter/normal_map = SubResource("NoiseTexture2D_b16ga")
|
||||
shader_parameter/subsurface_scattering_strength = 1.0
|
||||
shader_parameter/texture_subsurface_scattering = SubResource("NoiseTexture2D_qd4od")
|
||||
shader_parameter/edge_color = Color(0, 0, 0, 1)
|
||||
shader_parameter/surface_contribution = 6.655
|
||||
shader_parameter/specular_contribution = 2.0
|
||||
shader_parameter/refraction_contribution = 30.0
|
||||
shader_parameter/uv1_scale = Vector3(1, 1, 1)
|
||||
shader_parameter/uv1_offset = Vector3(0, 0, 0)
|
||||
|
||||
[sub_resource type="BoxMesh" id="BoxMesh_jpetf"]
|
||||
material = SubResource("ShaderMaterial_lwas5")
|
||||
size = Vector3(64, 64, 64)
|
||||
|
||||
[sub_resource type="BoxShape3D" id="BoxShape3D_74f5g"]
|
||||
size = Vector3(64, 64, 64)
|
||||
|
||||
[sub_resource type="ConvexPolygonShape3D" id="ConvexPolygonShape3D_axqqd"]
|
||||
points = PackedVector3Array(-32, -16, -32, -64, 16, -64, 32, -16, -32, -32, -16, 32, -64, 16, 64, 64, 16, -64, 32, -16, 32, 64, 16, 64)
|
||||
|
||||
[sub_resource type="FastNoiseLite" id="FastNoiseLite_0mv06"]
|
||||
noise_type = 2
|
||||
frequency = 0.015
|
||||
fractal_type = 3
|
||||
fractal_octaves = 1
|
||||
fractal_ping_pong_strength = 1.3
|
||||
|
||||
[sub_resource type="NoiseTexture2D" id="NoiseTexture2D_vfmm3"]
|
||||
seamless = true
|
||||
as_normal_map = true
|
||||
noise = SubResource("FastNoiseLite_0mv06")
|
||||
|
||||
[sub_resource type="FastNoiseLite" id="FastNoiseLite_qtehd"]
|
||||
noise_type = 2
|
||||
frequency = 0.015
|
||||
fractal_type = 3
|
||||
fractal_octaves = 1
|
||||
fractal_ping_pong_strength = 1.3
|
||||
|
||||
[sub_resource type="NoiseTexture2D" id="NoiseTexture2D_c7mgx"]
|
||||
invert = true
|
||||
seamless = true
|
||||
noise = SubResource("FastNoiseLite_qtehd")
|
||||
|
||||
[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_0lxst"]
|
||||
albedo_color = Color(1, 1, 0.968627, 1)
|
||||
roughness_texture = SubResource("NoiseTexture2D_c7mgx")
|
||||
normal_enabled = true
|
||||
normal_scale = 2.0
|
||||
normal_texture = SubResource("NoiseTexture2D_vfmm3")
|
||||
subsurf_scatter_enabled = true
|
||||
subsurf_scatter_strength = 1.0
|
||||
uv1_scale = Vector3(10, 5, 10)
|
||||
|
||||
[sub_resource type="SphereMesh" id="SphereMesh_ooxtq"]
|
||||
material = SubResource("StandardMaterial3D_0lxst")
|
||||
radius = 32.0
|
||||
height = 64.0
|
||||
radial_segments = 128
|
||||
rings = 64
|
||||
|
||||
[sub_resource type="SphereShape3D" id="SphereShape3D_ne5nm"]
|
||||
radius = 32.0
|
||||
|
||||
[sub_resource type="SphereShape3D" id="SphereShape3D_avmlg"]
|
||||
radius = 70.0
|
||||
|
||||
[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_b7w2s"]
|
||||
albedo_texture = ExtResource("17_xciuf")
|
||||
uv1_scale = Vector3(32, 10, 20)
|
||||
texture_filter = 4
|
||||
|
||||
[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_5pdkv"]
|
||||
albedo_texture = ExtResource("18_scall")
|
||||
uv1_scale = Vector3(4, 2, 1)
|
||||
texture_filter = 4
|
||||
|
||||
[sub_resource type="CylinderShape3D" id="CylinderShape3D_f1rqf"]
|
||||
height = 32.0
|
||||
radius = 32.0
|
||||
|
||||
[sub_resource type="CylinderShape3D" id="CylinderShape3D_sqfj0"]
|
||||
height = 55.0
|
||||
radius = 100.0
|
||||
|
||||
[node name="TestLevel" type="Node3D"]
|
||||
|
||||
[node name="Terrain3D" type="Terrain3D" parent="."]
|
||||
|
@ -312,7 +202,6 @@ camera_attributes = SubResource("CameraAttributesPractical_ypy22")
|
|||
transform = Transform3D(0.782608, -0.611691, 0.11558, 0, 0.185667, 0.982613, -0.622515, -0.769001, 0.145304, 0, 0, 0)
|
||||
shadow_enabled = true
|
||||
shadow_blur = 4.0
|
||||
directional_shadow_max_distance = 160.0
|
||||
|
||||
[node name="Course" type="Node3D" parent="."]
|
||||
|
||||
|
@ -344,7 +233,7 @@ shape = SubResource("BoxShape3D_x3wvm")
|
|||
transform = Transform3D(-0.74629, 0, -0.665621, 0, 1, 0, 0.665621, 0, -0.74629, 381.024, -0.5, 224.968)
|
||||
|
||||
[node name="Flag" parent="Course" instance=ExtResource("13_6jtao")]
|
||||
transform = Transform3D(-0.777146, 0, -0.629321, 0, 1, 0, 0.629321, 0, -0.777146, 540, 4, 452)
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 540, 4, 452)
|
||||
|
||||
[node name="PlayerSpawn1" type="Marker3D" parent="Course" groups=["PlayerSpawn"]]
|
||||
transform = Transform3D(-0.842697, 0, -0.538388, 0, 1, 0, 0.538388, 0, -0.842697, 212.717, 4, 294.073)
|
||||
|
@ -479,163 +368,3 @@ transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.107056, 54.6249, 58.7148)
|
|||
|
||||
[node name="Umineko2" parent="NorthSea" instance=ExtResource("21_ch6qk")]
|
||||
transform = Transform3D(-0.911669, 0, -0.410926, 0, 1, 0, 0.410926, 0, -0.911669, 46.6726, 54.6249, 64.5933)
|
||||
|
||||
[node name="GlobalEffects" type="Node3D" parent="."]
|
||||
|
||||
[node name="ZephyrParticle" parent="GlobalEffects" instance=ExtResource("16_2kyww")]
|
||||
transform = Transform3D(0.744591, 0, -0.667521, 0, 1, 0, 0.667521, 0, 0.744591, 343.248, 54.9445, 208.568)
|
||||
|
||||
[node name="ZephyrParticle2" parent="GlobalEffects" instance=ExtResource("16_2kyww")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -159.689, 62.5083, 1162.07)
|
||||
|
||||
[node name="ZephyrParticle3" parent="GlobalEffects" instance=ExtResource("16_2kyww")]
|
||||
transform = Transform3D(0.258819, 0, -0.965926, 0, 1, 0, 0.965926, 0, 0.258819, -406.175, 99.5943, 417.273)
|
||||
|
||||
[node name="GravityCube" type="Node3D" parent="."]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 138.031, 94.1383, -166.358)
|
||||
|
||||
[node name="MeshInstance3D" type="MeshInstance3D" parent="GravityCube"]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.00137329, 0.104053, -0.00378418)
|
||||
mesh = SubResource("BoxMesh_jpetf")
|
||||
|
||||
[node name="StaticBody3D" type="StaticBody3D" parent="GravityCube/MeshInstance3D"]
|
||||
|
||||
[node name="CollisionShape3D" type="CollisionShape3D" parent="GravityCube/MeshInstance3D/StaticBody3D"]
|
||||
shape = SubResource("BoxShape3D_74f5g")
|
||||
|
||||
[node name="Area3D" type="Area3D" parent="GravityCube/MeshInstance3D"]
|
||||
gravity_space_override = 3
|
||||
|
||||
[node name="CollisionShape3D" type="CollisionShape3D" parent="GravityCube/MeshInstance3D/Area3D"]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 48, 0)
|
||||
shape = SubResource("ConvexPolygonShape3D_axqqd")
|
||||
|
||||
[node name="Area3D2" type="Area3D" parent="GravityCube/MeshInstance3D"]
|
||||
transform = Transform3D(1, 0, 0, 0, -4.37114e-08, -1, 0, 1, -4.37114e-08, 0, 0, 0)
|
||||
gravity_space_override = 3
|
||||
gravity_point_center = Vector3(0, 0, -1)
|
||||
gravity_direction = Vector3(0, 0, -1)
|
||||
|
||||
[node name="CollisionShape3D" type="CollisionShape3D" parent="GravityCube/MeshInstance3D/Area3D2"]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 48, 0)
|
||||
shape = SubResource("ConvexPolygonShape3D_axqqd")
|
||||
|
||||
[node name="Area3D3" type="Area3D" parent="GravityCube/MeshInstance3D"]
|
||||
transform = Transform3D(1, 0, 0, 0, -1, 8.74228e-08, 0, -8.74228e-08, -1, 0, 0, 0)
|
||||
gravity_space_override = 3
|
||||
|
||||
[node name="CollisionShape3D" type="CollisionShape3D" parent="GravityCube/MeshInstance3D/Area3D3"]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 48, 0)
|
||||
shape = SubResource("ConvexPolygonShape3D_axqqd")
|
||||
|
||||
[node name="Area3D4" type="Area3D" parent="GravityCube/MeshInstance3D"]
|
||||
transform = Transform3D(1, 0, 0, 0, 1.19249e-08, 1, 0, -1, 1.19249e-08, 0, 0, 0)
|
||||
gravity_space_override = 3
|
||||
gravity_point_center = Vector3(0, 0, 1)
|
||||
gravity_direction = Vector3(0, 0, 1)
|
||||
|
||||
[node name="CollisionShape3D" type="CollisionShape3D" parent="GravityCube/MeshInstance3D/Area3D4"]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 48, 0)
|
||||
shape = SubResource("ConvexPolygonShape3D_axqqd")
|
||||
|
||||
[node name="Area3D5" type="Area3D" parent="GravityCube/MeshInstance3D"]
|
||||
transform = Transform3D(-4.37114e-08, -1, 0, 1, -4.37114e-08, 0, 0, 0, 1, 0, 0, 0)
|
||||
gravity_space_override = 3
|
||||
gravity_point_center = Vector3(1, 0, 0)
|
||||
gravity_direction = Vector3(1, 0, 0)
|
||||
|
||||
[node name="CollisionShape3D" type="CollisionShape3D" parent="GravityCube/MeshInstance3D/Area3D5"]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 48, 0)
|
||||
shape = SubResource("ConvexPolygonShape3D_axqqd")
|
||||
|
||||
[node name="Area3D6" type="Area3D" parent="GravityCube/MeshInstance3D"]
|
||||
transform = Transform3D(-4.37114e-08, 1, 0, -1, -4.37114e-08, 0, 0, 0, 1, 0, 0, 0)
|
||||
gravity_space_override = 3
|
||||
gravity_point_center = Vector3(-1, 0, 0)
|
||||
gravity_direction = Vector3(-1, 0, 0)
|
||||
|
||||
[node name="CollisionShape3D" type="CollisionShape3D" parent="GravityCube/MeshInstance3D/Area3D6"]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 48, 0)
|
||||
shape = SubResource("ConvexPolygonShape3D_axqqd")
|
||||
|
||||
[node name="GravityOrb" type="Node3D" parent="."]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 380.514, 68.1495, 149.757)
|
||||
|
||||
[node name="MeshInstance3D" type="MeshInstance3D" parent="GravityOrb"]
|
||||
mesh = SubResource("SphereMesh_ooxtq")
|
||||
|
||||
[node name="StaticBody3D" type="StaticBody3D" parent="GravityOrb/MeshInstance3D"]
|
||||
|
||||
[node name="CollisionShape3D" type="CollisionShape3D" parent="GravityOrb/MeshInstance3D/StaticBody3D"]
|
||||
shape = SubResource("SphereShape3D_ne5nm")
|
||||
|
||||
[node name="Area3D" type="Area3D" parent="GravityOrb/MeshInstance3D"]
|
||||
priority = 1
|
||||
gravity_space_override = 3
|
||||
gravity_point = true
|
||||
gravity_point_center = Vector3(0, 0, 0)
|
||||
gravity_direction = Vector3(0, 0, 0)
|
||||
|
||||
[node name="CollisionShape3D" type="CollisionShape3D" parent="GravityOrb/MeshInstance3D/Area3D"]
|
||||
shape = SubResource("SphereShape3D_avmlg")
|
||||
|
||||
[node name="GravityBowl" type="Node3D" parent="."]
|
||||
transform = Transform3D(2.33934e-08, 0.535178, -0.844739, 1, -4.37114e-08, 0, -3.69247e-08, -0.844739, -0.535178, 346.094, 31.021, -73.4132)
|
||||
|
||||
[node name="CSGCombiner3D" type="CSGCombiner3D" parent="GravityBowl"]
|
||||
use_collision = true
|
||||
|
||||
[node name="OuterCylinder" type="CSGCylinder3D" parent="GravityBowl/CSGCombiner3D"]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 16, 0)
|
||||
radius = 32.0
|
||||
height = 32.0
|
||||
sides = 64
|
||||
material = SubResource("StandardMaterial3D_b7w2s")
|
||||
|
||||
[node name="InnerSphere" type="CSGSphere3D" parent="GravityBowl/CSGCombiner3D"]
|
||||
operation = 2
|
||||
radius = 31.0
|
||||
radial_segments = 64
|
||||
rings = 32
|
||||
material = SubResource("StandardMaterial3D_5pdkv")
|
||||
|
||||
[node name="Area3D" type="Area3D" parent="GravityBowl"]
|
||||
gravity_space_override = 3
|
||||
gravity_point = true
|
||||
gravity_point_center = Vector3(0, 0, 0)
|
||||
gravity_direction = Vector3(0, 0, 0)
|
||||
gravity = -9.8
|
||||
|
||||
[node name="CollisionShape3D" type="CollisionShape3D" parent="GravityBowl/Area3D"]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 16, 0)
|
||||
shape = SubResource("CylinderShape3D_f1rqf")
|
||||
|
||||
[node name="GravityHalo" type="Node3D" parent="."]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 73.1897, 78.0923, 345.794)
|
||||
|
||||
[node name="CSGCombiner3D" type="CSGCombiner3D" parent="GravityHalo"]
|
||||
use_collision = true
|
||||
|
||||
[node name="OuterShell" type="CSGTorus3D" parent="GravityHalo/CSGCombiner3D"]
|
||||
inner_radius = 32.0
|
||||
outer_radius = 108.0
|
||||
sides = 64
|
||||
ring_sides = 32
|
||||
material = SubResource("StandardMaterial3D_b7w2s")
|
||||
|
||||
[node name="InnerSphere" type="CSGSphere3D" parent="GravityHalo/CSGCombiner3D"]
|
||||
operation = 2
|
||||
radius = 100.0
|
||||
radial_segments = 64
|
||||
rings = 32
|
||||
material = SubResource("StandardMaterial3D_5pdkv")
|
||||
|
||||
[node name="Area3D" type="Area3D" parent="GravityHalo"]
|
||||
gravity_space_override = 3
|
||||
gravity_point = true
|
||||
gravity_point_center = Vector3(0, 0, 0)
|
||||
gravity_direction = Vector3(0, 0, 0)
|
||||
gravity = -9.8
|
||||
|
||||
[node name="CollisionShape3D" type="CollisionShape3D" parent="GravityHalo/Area3D"]
|
||||
shape = SubResource("CylinderShape3D_sqfj0")
|
||||
|
|
|
@ -132,11 +132,6 @@ shot_cancel={
|
|||
"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":81,"key_label":0,"unicode":113,"location":0,"echo":false,"script":null)
|
||||
]
|
||||
}
|
||||
shot_reset={
|
||||
"deadzone": 0.5,
|
||||
"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":82,"key_label":0,"unicode":114,"location":0,"echo":false,"script":null)
|
||||
]
|
||||
}
|
||||
select_driver={
|
||||
"deadzone": 0.5,
|
||||
"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":49,"key_label":0,"unicode":49,"location":0,"echo":false,"script":null)
|
||||
|
@ -201,7 +196,7 @@ ball_previous={
|
|||
[layer_names]
|
||||
|
||||
3d_physics/layer_1="Collision Geometry"
|
||||
3d_physics/layer_2="Layer 2"
|
||||
3d_physics/layer_2="Layer 3"
|
||||
3d_physics/layer_27="Glass Material"
|
||||
3d_physics/layer_28="Metal Material"
|
||||
3d_physics/layer_29="Rock Material"
|
||||
|
|
|
@ -38,8 +38,6 @@ const MAGNUS_EPSILON := 1e-3
|
|||
## Scaling factor for additional force-based damage
|
||||
@export var damage_force_scale := 0.01
|
||||
|
||||
var current_gravity: Vector3
|
||||
|
||||
var _last_contact_normal: Vector3 = Vector3.UP
|
||||
var _position_on_last_wake: Vector3
|
||||
var _awake := false
|
||||
|
@ -82,7 +80,6 @@ func _magnus_force() -> Vector3:
|
|||
|
||||
|
||||
func _integrate_forces(state: PhysicsDirectBodyState3D) -> void:
|
||||
current_gravity = state.total_gravity
|
||||
if not _awake:
|
||||
# Triggered on first frame after waking
|
||||
_awake = true
|
||||
|
|
|
@ -49,7 +49,6 @@ const WIDTH := 4
|
|||
|
||||
@export var draw_reoriented_basis := true
|
||||
@export var draw_magnus_effect := true
|
||||
@export var draw_gravity_basis := true
|
||||
|
||||
@onready var physics_ball: GameBall = $\"..\"
|
||||
|
||||
|
@ -74,19 +73,6 @@ func _draw() -> void:
|
|||
if draw_magnus_effect:
|
||||
var end := camera.unproject_position(physics_ball.global_position + physics_ball._magnus_force() * MAGNUS_SCALE)
|
||||
draw_line(start, end, COLOR_MAGNUS, WIDTH)
|
||||
|
||||
if draw_gravity_basis:
|
||||
var orbital: Node3D = camera.get_parent_node_3d().get_parent_node_3d().get_parent_node_3d()
|
||||
var up := -physics_ball.current_gravity.normalized()
|
||||
var right := up.cross(orbital.global_basis.z).normalized()
|
||||
var forward := right.cross(up).normalized()
|
||||
|
||||
var end_x := camera.unproject_position(physics_ball.global_position + right)
|
||||
var end_y := camera.unproject_position(physics_ball.global_position + up)
|
||||
var end_z := camera.unproject_position(physics_ball.global_position + forward)
|
||||
draw_line(start, end_x, COLOR_X, WIDTH)
|
||||
draw_line(start, end_y, COLOR_Y, WIDTH)
|
||||
draw_line(start, end_z, COLOR_Z, WIDTH)
|
||||
"
|
||||
|
||||
[sub_resource type="AudioStreamRandomizer" id="AudioStreamRandomizer_gc38m"]
|
||||
|
@ -164,7 +150,6 @@ grow_horizontal = 2
|
|||
grow_vertical = 2
|
||||
script = SubResource("GDScript_p4v7o")
|
||||
draw_reoriented_basis = false
|
||||
draw_magnus_effect = false
|
||||
|
||||
[node name="SFX" type="Node3D" parent="."]
|
||||
unique_name_in_owner = true
|
||||
|
|
|
@ -8,7 +8,6 @@ enum Phase {
|
|||
CURVE_ADJUST,
|
||||
DOWNSWING,
|
||||
SHOT,
|
||||
SHOT_RESET,
|
||||
FINISHED,
|
||||
}
|
||||
|
||||
|
@ -88,15 +87,6 @@ var invert_pitch: bool = ProjectSettings.get_setting("game/config/controls/camer
|
|||
|
||||
var control_disabled := false
|
||||
|
||||
var reset_enabled := false:
|
||||
set(value):
|
||||
if value != reset_enabled:
|
||||
if value:
|
||||
hud.show_reset_prompt()
|
||||
else:
|
||||
hud.hide_reset_prompt()
|
||||
reset_enabled = value
|
||||
|
||||
var phase: Phase = Phase.FINISHED:
|
||||
set(value):
|
||||
if value != phase:
|
||||
|
@ -168,7 +158,6 @@ var _tracking_camera: OrbitalCamera
|
|||
|
||||
@onready var downswing_timer: Timer = %DownswingTimer
|
||||
@onready var ball_return_timer: Timer = %BallReturnTimer
|
||||
@onready var reset_prompt_timer: Timer = %ResetPromptTimer
|
||||
|
||||
@onready var explosion_animation: AnimationPlayer = %ExplosionAnimation
|
||||
@onready var player_label: Label3D = %PlayerLabel
|
||||
|
@ -284,8 +273,6 @@ func take_shot() -> void:
|
|||
game_ball.freeze = false
|
||||
game_ball.apply_impulse(impulse, offset)
|
||||
|
||||
reset_prompt_timer.start()
|
||||
|
||||
# Play SFX
|
||||
shot_sfx.play_shot_sfx(club_type, is_shot_good(), shot_power)
|
||||
|
||||
|
@ -388,7 +375,7 @@ func end_shot_track() -> void:
|
|||
camera.make_current()
|
||||
if is_instance_valid(_tracking_camera):
|
||||
_tracking_camera.queue_free()
|
||||
if phase in [Phase.SHOT, Phase.SHOT_RESET]:
|
||||
if phase == Phase.SHOT:
|
||||
phase = Phase.FINISHED
|
||||
|
||||
|
||||
|
@ -431,9 +418,6 @@ func _set_club_type(new_club_type: Club.Type) -> void:
|
|||
|
||||
## Called immediately before `phase` is mutated.
|
||||
func _on_phase_change(new_phase: Phase) -> void:
|
||||
reset_prompt_timer.stop()
|
||||
reset_enabled = false
|
||||
|
||||
match new_phase:
|
||||
Phase.AIM:
|
||||
hud.show_hud()
|
||||
|
@ -585,11 +569,6 @@ func _process(delta: float) -> void:
|
|||
hud.stop_curve_bar()
|
||||
phase = Phase.DOWNSWING
|
||||
Phase.SHOT:
|
||||
if reset_enabled and Input.is_action_just_pressed("shot_reset"):
|
||||
phase = Phase.SHOT_RESET
|
||||
reset_enabled = false
|
||||
return_ball()
|
||||
|
||||
if driving_range and Input.is_action_just_pressed("shot_accept"):
|
||||
phase = Phase.AIM
|
||||
return_ball()
|
||||
|
@ -608,7 +587,6 @@ func _on_ball_sleeping_state_changed() -> void:
|
|||
func _on_ball_entered_water() -> void:
|
||||
# Should only be possible during SHOT phase, but let's check just to be sure...
|
||||
if phase == Phase.SHOT:
|
||||
phase = Phase.SHOT_RESET
|
||||
game_ball.freeze = true
|
||||
hud.play_wasted_animation()
|
||||
player.life -= WATER_DAMAGE
|
||||
|
@ -639,10 +617,6 @@ func _on_hitbox_ball_collision(ball: GameBall) -> void:
|
|||
ball.apply_central_impulse(explosion_impulse)
|
||||
|
||||
|
||||
func _on_reset_prompt_timer_timeout() -> void:
|
||||
reset_enabled = true
|
||||
|
||||
|
||||
## Create a new instance for the given player.
|
||||
static func create(_player: WorldPlayer) -> ShotSetup:
|
||||
var instance: ShotSetup = ShotSetup.scene.instantiate()
|
||||
|
|
|
@ -451,11 +451,6 @@ one_shot = true
|
|||
unique_name_in_owner = true
|
||||
one_shot = true
|
||||
|
||||
[node name="ResetPromptTimer" type="Timer" parent="."]
|
||||
unique_name_in_owner = true
|
||||
wait_time = 45.0
|
||||
one_shot = true
|
||||
|
||||
[node name="Hitbox" type="Area3D" parent="."]
|
||||
script = ExtResource("7_uh8kn")
|
||||
|
||||
|
@ -503,6 +498,5 @@ width = 120.0
|
|||
[connection signal="ball_changed" from="BallPoint" to="." method="_on_game_ball_changed"]
|
||||
[connection signal="timeout" from="DownswingTimer" to="." method="finish_downswing"]
|
||||
[connection signal="timeout" from="BallReturnTimer" to="." method="_on_ball_return_timer_timeout"]
|
||||
[connection signal="timeout" from="ResetPromptTimer" to="." method="_on_reset_prompt_timer_timeout"]
|
||||
[connection signal="ball_collision" from="Hitbox" to="." method="_on_hitbox_ball_collision"]
|
||||
[connection signal="body_entered" from="Hitbox" to="Hitbox" method="_on_body_entered"]
|
||||
|
|
|
@ -1,49 +1,28 @@
|
|||
class_name OrbitalCamera extends Node3D
|
||||
|
||||
const POSITION_ACCELERATION := 4.0
|
||||
const BASIS_ACCELERATION := 4.0
|
||||
const TARGETER_ACCELERATION := 7.0
|
||||
|
||||
@export var target: Node3D
|
||||
@export var offset := Vector3(0, 1, 0)
|
||||
|
||||
@export var angular_speed := 0.007
|
||||
|
||||
var target_basis := Basis.IDENTITY
|
||||
|
||||
@onready var pivot: Node3D = %Pivot
|
||||
@onready var camera: Camera3D = %Camera
|
||||
@onready var targeter: Node3D = %Targeter
|
||||
|
||||
static var scene := preload("res://src/ui/camera/orbital_camera/orbital_camera.tscn")
|
||||
|
||||
|
||||
func _physics_process(delta: float) -> void:
|
||||
var up := Vector3.UP
|
||||
# If target is a game ball, realign to gravity
|
||||
if target is GameBall:
|
||||
up = -(target as GameBall).current_gravity.normalized()
|
||||
var right := up.cross(global_basis.z).normalized()
|
||||
var forward := right.cross(up).normalized()
|
||||
target_basis = Basis(right, up, forward)
|
||||
|
||||
# Slerp to basis
|
||||
global_basis = global_basis.slerp(target_basis, delta * BASIS_ACCELERATION)
|
||||
|
||||
# Update position
|
||||
global_position = global_position.lerp(
|
||||
target.global_position + offset, delta * POSITION_ACCELERATION
|
||||
)
|
||||
|
||||
# Update rotation
|
||||
#camera.look_at(target.global_position, up)
|
||||
targeter.look_at(target.global_position, up)
|
||||
camera.global_basis = camera.global_basis.slerp(
|
||||
targeter.global_basis.orthonormalized(), delta * TARGETER_ACCELERATION
|
||||
)
|
||||
camera.look_at(target.global_position)
|
||||
|
||||
# Update phase angle
|
||||
pivot.rotation.y += angular_speed
|
||||
rotation.y += angular_speed
|
||||
|
||||
|
||||
static func create(_target: Node3D) -> OrbitalCamera:
|
||||
|
|
|
@ -5,20 +5,12 @@
|
|||
[node name="OrbitalCamera" type="Node3D"]
|
||||
script = ExtResource("1_nvlic")
|
||||
|
||||
[node name="Pivot" type="Node3D" parent="."]
|
||||
unique_name_in_owner = true
|
||||
|
||||
[node name="Pitch" type="SpringArm3D" parent="Pivot"]
|
||||
[node name="Pitch" type="SpringArm3D" parent="."]
|
||||
transform = Transform3D(1, 0, 0, 0, 0.913545, 0.406737, 0, -0.406737, 0.913545, 0, 0, 0)
|
||||
spring_length = 3.2
|
||||
|
||||
[node name="CameraOffset" type="Node3D" parent="Pivot/Pitch"]
|
||||
[node name="Camera" type="Camera3D" parent="Pitch"]
|
||||
unique_name_in_owner = true
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 3)
|
||||
|
||||
[node name="Targeter" type="Node3D" parent="Pivot/Pitch/CameraOffset"]
|
||||
unique_name_in_owner = true
|
||||
|
||||
[node name="Camera" type="Camera3D" parent="Pivot/Pitch/CameraOffset"]
|
||||
unique_name_in_owner = true
|
||||
current = true
|
||||
far = 8192.0
|
||||
|
|
|
@ -1,49 +0,0 @@
|
|||
@tool
|
||||
extends Label
|
||||
## A prompt with the input symbol bound to the given action.
|
||||
|
||||
const PROMPT_FORMAT := "{0} - {1}"
|
||||
|
||||
const UNKNOWN_LABEL_SYM := "[unknown]"
|
||||
|
||||
@export var action: StringName:
|
||||
set(value):
|
||||
action = value
|
||||
_update()
|
||||
|
||||
@export var label: String:
|
||||
set(value):
|
||||
label = value
|
||||
_update()
|
||||
|
||||
|
||||
func _ready() -> void:
|
||||
_update()
|
||||
|
||||
|
||||
func _update() -> void:
|
||||
var input_symbol: String
|
||||
var actions := InputMap.action_get_events(action)
|
||||
if actions:
|
||||
var primary := actions[0]
|
||||
input_symbol = _get_input_symbol(primary)
|
||||
|
||||
text = PROMPT_FORMAT.format(
|
||||
[
|
||||
input_symbol if input_symbol else PromptMap.UNKNOWN_INPUT_SYMBOL,
|
||||
label if label else UNKNOWN_LABEL_SYM
|
||||
]
|
||||
)
|
||||
|
||||
|
||||
func _get_input_symbol(event: InputEvent) -> String:
|
||||
if event is InputEventKey:
|
||||
return PromptMap.key(event as InputEventKey)
|
||||
elif event is InputEventMouseButton:
|
||||
return PromptMap.mouse_button(event as InputEventMouseButton)
|
||||
elif event is InputEventJoypadButton:
|
||||
return PromptMap.gamepad_button(event as InputEventJoypadButton)
|
||||
elif event is InputEventJoypadMotion:
|
||||
return PromptMap.gamepad_axis(event as InputEventJoypadMotion)
|
||||
else:
|
||||
return PromptMap.UNKNOWN_INPUT_SYMBOL
|
|
@ -1,14 +0,0 @@
|
|||
[gd_scene load_steps=2 format=3 uid="uid://b47goj32i6sdh"]
|
||||
|
||||
[ext_resource type="Script" path="res://src/ui/input_prompt/input_prompt.gd" id="1_qq6w5"]
|
||||
|
||||
[node name="InputPrompt" type="Label"]
|
||||
anchors_preset = 15
|
||||
anchor_right = 1.0
|
||||
anchor_bottom = 1.0
|
||||
grow_horizontal = 2
|
||||
grow_vertical = 2
|
||||
theme_type_variation = &"InputPrompt"
|
||||
text = "❓ - [unknown]"
|
||||
script = ExtResource("1_qq6w5")
|
||||
action = ""
|
|
@ -1,271 +0,0 @@
|
|||
class_name PromptMap
|
||||
## Tools for mapping input events to PromptFont glyphs.
|
||||
|
||||
const UNKNOWN_INPUT_SYMBOL := PromptFont.ICON_QUESTION
|
||||
|
||||
## Keyboard key map
|
||||
const KEYBOARD := {
|
||||
KEY_LEFT: PromptFont.KEYBOARD_LEFT,
|
||||
KEY_UP: PromptFont.KEYBOARD_UP,
|
||||
KEY_RIGHT: PromptFont.KEYBOARD_RIGHT,
|
||||
KEY_DOWN: PromptFont.KEYBOARD_DOWN,
|
||||
KEY_CTRL: PromptFont.KEYBOARD_CONTROL,
|
||||
KEY_ALT: PromptFont.KEYBOARD_ALT,
|
||||
KEY_SHIFT: PromptFont.KEYBOARD_SHIFT,
|
||||
KEY_TAB: PromptFont.KEYBOARD_TAB,
|
||||
KEY_CAPSLOCK: PromptFont.KEYBOARD_CAPS,
|
||||
KEY_BACKSPACE: PromptFont.KEYBOARD_BACKSPACE,
|
||||
KEY_ENTER: PromptFont.KEYBOARD_ENTER,
|
||||
KEY_KP_ENTER: PromptFont.KEYBOARD_ENTER,
|
||||
KEY_ESCAPE: PromptFont.KEYBOARD_ESCAPE,
|
||||
KEY_PRINT: PromptFont.KEYBOARD_PRINT_SCREEN,
|
||||
KEY_SCROLLLOCK: PromptFont.KEYBOARD_SCROLL_LOCK,
|
||||
KEY_PAUSE: PromptFont.KEYBOARD_PAUSE,
|
||||
KEY_NUMLOCK: PromptFont.KEYBOARD_NUM_LOCK,
|
||||
KEY_INSERT: PromptFont.KEYBOARD_INSERT,
|
||||
KEY_HOME: PromptFont.KEYBOARD_HOME,
|
||||
KEY_PAGEUP: PromptFont.KEYBOARD_PAGE_UP,
|
||||
KEY_DELETE: PromptFont.KEYBOARD_DELETE,
|
||||
KEY_END: PromptFont.KEYBOARD_END,
|
||||
KEY_PAGEDOWN: PromptFont.KEYBOARD_PAGE_DOWN,
|
||||
KEY_SPACE: PromptFont.KEYBOARD_SPACE,
|
||||
KEY_F1: PromptFont.KEYBOARD_F1,
|
||||
KEY_F2: PromptFont.KEYBOARD_F2,
|
||||
KEY_F3: PromptFont.KEYBOARD_F3,
|
||||
KEY_F4: PromptFont.KEYBOARD_F4,
|
||||
KEY_F5: PromptFont.KEYBOARD_F5,
|
||||
KEY_F6: PromptFont.KEYBOARD_F6,
|
||||
KEY_F7: PromptFont.KEYBOARD_F7,
|
||||
KEY_F8: PromptFont.KEYBOARD_F8,
|
||||
KEY_F9: PromptFont.KEYBOARD_F9,
|
||||
KEY_F10: PromptFont.KEYBOARD_F10,
|
||||
KEY_F11: PromptFont.KEYBOARD_F11,
|
||||
KEY_F12: PromptFont.KEYBOARD_F12,
|
||||
KEY_0: PromptFont.KEYBOARD_0,
|
||||
KEY_1: PromptFont.KEYBOARD_1,
|
||||
KEY_2: PromptFont.KEYBOARD_2,
|
||||
KEY_3: PromptFont.KEYBOARD_3,
|
||||
KEY_4: PromptFont.KEYBOARD_4,
|
||||
KEY_5: PromptFont.KEYBOARD_5,
|
||||
KEY_6: PromptFont.KEYBOARD_6,
|
||||
KEY_7: PromptFont.KEYBOARD_7,
|
||||
KEY_8: PromptFont.KEYBOARD_8,
|
||||
KEY_9: PromptFont.KEYBOARD_9,
|
||||
KEY_KP_0: PromptFont.KEYBOARD_0,
|
||||
KEY_KP_1: PromptFont.KEYBOARD_1,
|
||||
KEY_KP_2: PromptFont.KEYBOARD_2,
|
||||
KEY_KP_3: PromptFont.KEYBOARD_3,
|
||||
KEY_KP_4: PromptFont.KEYBOARD_4,
|
||||
KEY_KP_5: PromptFont.KEYBOARD_5,
|
||||
KEY_KP_6: PromptFont.KEYBOARD_6,
|
||||
KEY_KP_7: PromptFont.KEYBOARD_7,
|
||||
KEY_KP_8: PromptFont.KEYBOARD_8,
|
||||
KEY_KP_9: PromptFont.KEYBOARD_9,
|
||||
KEY_A: PromptFont.KEYBOARD_A,
|
||||
KEY_B: PromptFont.KEYBOARD_B,
|
||||
KEY_C: PromptFont.KEYBOARD_C,
|
||||
KEY_D: PromptFont.KEYBOARD_D,
|
||||
KEY_E: PromptFont.KEYBOARD_E,
|
||||
KEY_F: PromptFont.KEYBOARD_F,
|
||||
KEY_G: PromptFont.KEYBOARD_G,
|
||||
KEY_H: PromptFont.KEYBOARD_H,
|
||||
KEY_I: PromptFont.KEYBOARD_I,
|
||||
KEY_J: PromptFont.KEYBOARD_J,
|
||||
KEY_K: PromptFont.KEYBOARD_K,
|
||||
KEY_L: PromptFont.KEYBOARD_L,
|
||||
KEY_M: PromptFont.KEYBOARD_M,
|
||||
KEY_N: PromptFont.KEYBOARD_N,
|
||||
KEY_O: PromptFont.KEYBOARD_O,
|
||||
KEY_P: PromptFont.KEYBOARD_P,
|
||||
KEY_Q: PromptFont.KEYBOARD_Q,
|
||||
KEY_R: PromptFont.KEYBOARD_R,
|
||||
KEY_S: PromptFont.KEYBOARD_S,
|
||||
KEY_T: PromptFont.KEYBOARD_T,
|
||||
KEY_U: PromptFont.KEYBOARD_U,
|
||||
KEY_V: PromptFont.KEYBOARD_V,
|
||||
KEY_W: PromptFont.KEYBOARD_W,
|
||||
KEY_X: PromptFont.KEYBOARD_X,
|
||||
KEY_Y: PromptFont.KEYBOARD_Y,
|
||||
KEY_Z: PromptFont.KEYBOARD_Z
|
||||
}
|
||||
|
||||
## Mouse button & scroll map
|
||||
const MOUSE := {
|
||||
MOUSE_BUTTON_LEFT: PromptFont.MOUSE_1,
|
||||
MOUSE_BUTTON_RIGHT: PromptFont.MOUSE_2,
|
||||
MOUSE_BUTTON_MIDDLE: PromptFont.MOUSE_3,
|
||||
MOUSE_BUTTON_XBUTTON1: PromptFont.MOUSE_4,
|
||||
MOUSE_BUTTON_XBUTTON2: PromptFont.MOUSE_5,
|
||||
# PromptFont.MOUSE_6,
|
||||
# PromptFont.MOUSE_7,
|
||||
# PromptFont.MOUSE_8,
|
||||
MOUSE_BUTTON_WHEEL_UP: PromptFont.MOUSE_SCROLL_UP,
|
||||
MOUSE_BUTTON_WHEEL_DOWN: PromptFont.MOUSE_SCROLL_DOWN
|
||||
# PromptFont.MOUSE_LEFT,
|
||||
# PromptFont.MOUSE_RIGHT,
|
||||
# PromptFont.MOUSE_MIDDLE,
|
||||
# PromptFont.MOUSE_LEFT_RIGHT,
|
||||
# PromptFont.MOUSE_UP_DOWN,
|
||||
# PromptFont.MOUSE_ANY
|
||||
}
|
||||
|
||||
## Generic gamepad button map
|
||||
const GAMEPAD_BUTTON := {
|
||||
JOY_BUTTON_X: PromptFont.GAMEPAD_X,
|
||||
JOY_BUTTON_Y: PromptFont.GAMEPAD_Y,
|
||||
JOY_BUTTON_B: PromptFont.GAMEPAD_B,
|
||||
JOY_BUTTON_A: PromptFont.GAMEPAD_A,
|
||||
JOY_BUTTON_BACK: PromptFont.GAMEPAD_SELECT,
|
||||
JOY_BUTTON_START: PromptFont.GAMEPAD_START,
|
||||
JOY_BUTTON_GUIDE: PromptFont.GAMEPAD_HOME,
|
||||
JOY_BUTTON_LEFT_STICK: PromptFont.ANALOG_L_CLICK,
|
||||
JOY_BUTTON_RIGHT_STICK: PromptFont.ANALOG_R_CLICK,
|
||||
JOY_BUTTON_LEFT_SHOULDER: PromptFont.XBOX_LEFT_SHOULDER,
|
||||
JOY_BUTTON_RIGHT_SHOULDER: PromptFont.XBOX_RIGHT_SHOULDER,
|
||||
JOY_BUTTON_DPAD_UP: PromptFont.DPAD_UP,
|
||||
JOY_BUTTON_DPAD_DOWN: PromptFont.DPAD_DOWN,
|
||||
JOY_BUTTON_DPAD_LEFT: PromptFont.DPAD_LEFT,
|
||||
JOY_BUTTON_DPAD_RIGHT: PromptFont.DPAD_RIGHT,
|
||||
JOY_BUTTON_MISC1: PromptFont.XBOX_VIEW,
|
||||
# JOY_BUTTON_PADDLE_1: ## Wtf is this?
|
||||
JOY_BUTTON_TOUCHPAD: PromptFont.SONY_TOUCHPAD
|
||||
}
|
||||
|
||||
## Generic gamepad axis map
|
||||
const GAMEPAD_AXIS := {
|
||||
JOY_AXIS_LEFT_X: PromptFont.ANALOG_L_LEFT_RIGHT,
|
||||
JOY_AXIS_LEFT_Y: PromptFont.ANALOG_L_UP_DOWN,
|
||||
JOY_AXIS_RIGHT_X: PromptFont.ANALOG_R_LEFT_RIGHT,
|
||||
JOY_AXIS_RIGHT_Y: PromptFont.ANALOG_R_UP_DOWN,
|
||||
JOY_AXIS_TRIGGER_LEFT: PromptFont.XBOX_LEFT_TRIGGER,
|
||||
JOY_AXIS_TRIGGER_RIGHT: PromptFont.XBOX_RIGHT_TRIGGER
|
||||
}
|
||||
|
||||
## Xbox gamepad button map
|
||||
const XBOX_BUTTON := {
|
||||
JOY_BUTTON_LEFT_SHOULDER: PromptFont.XBOX_LEFT_SHOULDER,
|
||||
JOY_BUTTON_RIGHT_SHOULDER: PromptFont.XBOX_RIGHT_SHOULDER,
|
||||
JOY_BUTTON_X: PromptFont.XBOX_X,
|
||||
JOY_BUTTON_Y: PromptFont.XBOX_Y,
|
||||
JOY_BUTTON_B: PromptFont.XBOX_B,
|
||||
JOY_BUTTON_A: PromptFont.XBOX_A,
|
||||
JOY_BUTTON_MISC1: PromptFont.XBOX_VIEW,
|
||||
JOY_BUTTON_START: PromptFont.XBOX_MENU,
|
||||
JOY_BUTTON_DPAD_LEFT: PromptFont.XBOX_DPAD_LEFT,
|
||||
JOY_BUTTON_DPAD_UP: PromptFont.XBOX_DPAD_UP,
|
||||
JOY_BUTTON_DPAD_RIGHT: PromptFont.XBOX_DPAD_RIGHT,
|
||||
JOY_BUTTON_DPAD_DOWN: PromptFont.XBOX_DPAD_DOWN,
|
||||
JOY_BUTTON_GUIDE: PromptFont.ICON_XBOX
|
||||
}
|
||||
|
||||
## Xbox gamepad axis map
|
||||
const XBOX_AXIS := {
|
||||
JOY_AXIS_TRIGGER_LEFT: PromptFont.XBOX_LEFT_TRIGGER,
|
||||
JOY_AXIS_TRIGGER_RIGHT: PromptFont.XBOX_RIGHT_TRIGGER
|
||||
}
|
||||
|
||||
## Sony gamepad button map
|
||||
const SONY_BUTTON := {
|
||||
JOY_BUTTON_LEFT_SHOULDER: PromptFont.SONY_LEFT_SHOULDER,
|
||||
JOY_BUTTON_RIGHT_SHOULDER: PromptFont.SONY_RIGHT_SHOULDER,
|
||||
JOY_BUTTON_X: PromptFont.SONY_X,
|
||||
JOY_BUTTON_Y: PromptFont.SONY_Y,
|
||||
JOY_BUTTON_B: PromptFont.SONY_B,
|
||||
JOY_BUTTON_A: PromptFont.SONY_A,
|
||||
JOY_BUTTON_MISC1: PromptFont.SONY_SHARE,
|
||||
JOY_BUTTON_TOUCHPAD: PromptFont.SONY_TOUCHPAD,
|
||||
JOY_BUTTON_START: PromptFont.SONY_OPTIONS,
|
||||
JOY_BUTTON_GUIDE: PromptFont.ICON_PLAYSTATION
|
||||
}
|
||||
|
||||
## Sony gamepad axis map
|
||||
const SONY_AXIS := {
|
||||
JOY_AXIS_TRIGGER_LEFT: PromptFont.SONY_LEFT_TRIGGER,
|
||||
JOY_AXIS_TRIGGER_RIGHT: PromptFont.SONY_RIGHT_TRIGGER
|
||||
}
|
||||
|
||||
## Nintendo gamepad button map
|
||||
const NINTENDO_BUTTON := {
|
||||
JOY_BUTTON_LEFT_SHOULDER: PromptFont.NINTENDO_LEFT_SHOULDER,
|
||||
JOY_BUTTON_RIGHT_SHOULDER: PromptFont.NINTENDO_RIGHT_SHOULDER,
|
||||
JOY_BUTTON_BACK: PromptFont.NINTENDO_MINUS,
|
||||
JOY_BUTTON_START: PromptFont.NINTENDO_PLUS,
|
||||
JOY_BUTTON_DPAD_LEFT: PromptFont.NINTENDO_DPAD_LEFT,
|
||||
JOY_BUTTON_DPAD_UP: PromptFont.NINTENDO_DPAD_UP,
|
||||
JOY_BUTTON_DPAD_RIGHT: PromptFont.NINTENDO_DPAD_RIGHT,
|
||||
JOY_BUTTON_DPAD_DOWN: PromptFont.NINTENDO_DPAD_DOWN
|
||||
}
|
||||
|
||||
## Nintendo gamepad axis map
|
||||
const NINTENDO_AXIS := {
|
||||
JOY_AXIS_TRIGGER_LEFT: PromptFont.NINTENDO_LEFT_TRIGGER,
|
||||
JOY_AXIS_TRIGGER_RIGHT: PromptFont.NINTENDO_RIGHT_TRIGGER
|
||||
}
|
||||
|
||||
|
||||
## Get the symbol representing the given keyboard input event.
|
||||
##
|
||||
## If there is no such symbol available, returns the key label.
|
||||
static func key(event: InputEventKey) -> String:
|
||||
if event.physical_keycode not in KEYBOARD:
|
||||
return OS.get_keycode_string(
|
||||
DisplayServer.keyboard_get_keycode_from_physical(event.physical_keycode)
|
||||
)
|
||||
return KEYBOARD[event.physical_keycode]
|
||||
|
||||
|
||||
## Get the symbol representing the given mouse button event.
|
||||
static func mouse_button(event: InputEventMouseButton) -> String:
|
||||
return MOUSE.get(event.button_index, UNKNOWN_INPUT_SYMBOL)
|
||||
|
||||
|
||||
## Get the symbol representing the given gamepad button event.
|
||||
static func gamepad_button(event: InputEventJoypadButton) -> String:
|
||||
return GAMEPAD_BUTTON.get(event.button_index, UNKNOWN_INPUT_SYMBOL)
|
||||
|
||||
|
||||
## Get the symbol representing the given gamepad axis event.
|
||||
static func gamepad_axis(event: InputEventJoypadMotion) -> String:
|
||||
return GAMEPAD_AXIS.get(event.axis, UNKNOWN_INPUT_SYMBOL)
|
||||
|
||||
|
||||
## Get the symbol representing the given gamepad button event.
|
||||
##
|
||||
## Symbols specific to Xbox gamepads will be used where possible.
|
||||
static func xbox_button(event: InputEventJoypadButton) -> String:
|
||||
return XBOX_BUTTON.get(event.button_index, gamepad_button(event))
|
||||
|
||||
|
||||
## Get the symbol representing the given gamepad axis event.
|
||||
##
|
||||
## Symbols specific to Xbox gamepads will be used where possible.
|
||||
static func xbox_axis(event: InputEventJoypadMotion) -> String:
|
||||
return XBOX_AXIS.get(event.axis, gamepad_axis(event))
|
||||
|
||||
|
||||
## Get the symbol representing the given gamepad button event.
|
||||
##
|
||||
## Symbols specific to Playstation Dualshock gamepads will be used where possible.
|
||||
static func sony_button(event: InputEventJoypadButton) -> String:
|
||||
return SONY_BUTTON.get(event.button_index, gamepad_button(event))
|
||||
|
||||
|
||||
## Get the symbol representing the given gamepad axis event.
|
||||
##
|
||||
## Symbols specific to Playstation Dualshock gamepads will be used where possible.
|
||||
static func sony_axis(event: InputEventJoypadMotion) -> String:
|
||||
return SONY_AXIS.get(event.axis, gamepad_axis(event))
|
||||
|
||||
|
||||
## Get the symbol representing the given gamepad button event.
|
||||
##
|
||||
## Symbols specific to Nintendo Switch joycons will be used where possible.
|
||||
static func nintendo_button(event: InputEventJoypadButton) -> String:
|
||||
return NINTENDO_BUTTON.get(event.button_index, gamepad_button(event))
|
||||
|
||||
|
||||
## Get the symbol representing the given gamepad axis event.
|
||||
##
|
||||
## Symbols specific to Nintendo Switch joycons will be used where possible.
|
||||
static func nintendo_axis(event: InputEventJoypadMotion) -> String:
|
||||
return NINTENDO_AXIS.get(event.axis, gamepad_axis(event))
|
|
@ -1,9 +1,8 @@
|
|||
[gd_resource type="Theme" load_steps=6 format=3 uid="uid://diodjft5u2cck"]
|
||||
[gd_resource type="Theme" load_steps=5 format=3 uid="uid://diodjft5u2cck"]
|
||||
|
||||
[ext_resource type="FontFile" uid="uid://dsa0oh7c0h4pu" path="res://assets/fonts/Racing_Sans_One/RacingSansOne-Regular.ttf" id="1_3rv2b"]
|
||||
[ext_resource type="FontFile" uid="uid://comihs66wounx" path="res://assets/fonts/Dokdo/Dokdo-Regular.ttf" id="1_eha6a"]
|
||||
[ext_resource type="FontFile" uid="uid://b6gxwgomstkgu" path="res://assets/fonts/Geo/Geo-Italic.ttf" id="2_5ty6u"]
|
||||
[ext_resource type="FontFile" uid="uid://dyog4ex5nqfat" path="res://assets/fonts/promptfont/promptfont.otf" id="2_8kux8"]
|
||||
[ext_resource type="FontFile" uid="uid://s4c1kf0rk2mb" path="res://assets/fonts/Geo/Geo-Regular.ttf" id="3_cee6l"]
|
||||
|
||||
[resource]
|
||||
|
@ -24,11 +23,6 @@ ClubSelectLabelDisabled/colors/font_outline_color = Color(0.2, 0.2, 0.2, 1)
|
|||
ClubSelectLabelDisabled/colors/font_shadow_color = Color(0.2, 0.2, 0.2, 1)
|
||||
ClubSelectLabelDisabled/font_sizes/font_size = 84
|
||||
ClubSelectLabelDisabled/fonts/font = ExtResource("1_3rv2b")
|
||||
InputPrompt/base_type = &"Label"
|
||||
InputPrompt/colors/font_color = Color(1, 1, 0.870588, 1)
|
||||
InputPrompt/constants/outline_size = 8
|
||||
InputPrompt/font_sizes/font_size = 32
|
||||
InputPrompt/fonts/font = ExtResource("2_8kux8")
|
||||
PauseMenuButton/base_type = &"Button"
|
||||
PauseMenuButton/colors/font_outline_color = Color(0, 0, 0, 1)
|
||||
PauseMenuButton/constants/outline_size = 6
|
||||
|
|
|
@ -26,8 +26,6 @@ var player: WorldPlayer
|
|||
|
||||
@onready var _player_name: Label = %PlayerName
|
||||
|
||||
@onready var _reset_prompt_animation: AnimationPlayer = %ResetPromptAnimation
|
||||
|
||||
@onready var _life_bar_rumbler: Rumbler = %LifeBarRumbler
|
||||
|
||||
static var scene: PackedScene = preload("res://src/ui/shot_hud/shot_hud.tscn")
|
||||
|
@ -95,13 +93,6 @@ func play_wasted_animation() -> void:
|
|||
_wasted_animation.play("display")
|
||||
|
||||
|
||||
func show_reset_prompt() -> void:
|
||||
_reset_prompt_animation.play("show")
|
||||
|
||||
|
||||
func hide_reset_prompt() -> void:
|
||||
_reset_prompt_animation.play_backwards("show")
|
||||
|
||||
## Set the value of the life bar, potentially playing some kind of effect in response.
|
||||
##
|
||||
## To set the life bar without triggering an effect, set it directly with `life_bar.value`
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
[gd_scene load_steps=47 format=3 uid="uid://c4ifdiohng830"]
|
||||
[gd_scene load_steps=38 format=3 uid="uid://c4ifdiohng830"]
|
||||
|
||||
[ext_resource type="Script" path="res://src/ui/shot_hud/shot_hud.gd" id="1_x5b4c"]
|
||||
[ext_resource type="Shader" path="res://src/shaders/canvas_retro.gdshader" id="1_ybxxp"]
|
||||
|
@ -13,7 +13,6 @@
|
|||
[ext_resource type="FontFile" uid="uid://dsa0oh7c0h4pu" path="res://assets/fonts/Racing_Sans_One/RacingSansOne-Regular.ttf" id="8_bejx4"]
|
||||
[ext_resource type="Texture2D" uid="uid://tancoet1lih5" path="res://assets/ui/ball_icons/basic_icon.png" id="8_tt8i3"]
|
||||
[ext_resource type="PackedScene" uid="uid://dmciuk3pbjsae" path="res://src/ui/shot_hud/life_bar/life_bar.tscn" id="9_w1fiw"]
|
||||
[ext_resource type="PackedScene" uid="uid://b47goj32i6sdh" path="res://src/ui/input_prompt/input_prompt.tscn" id="14_ik4gg"]
|
||||
|
||||
[sub_resource type="Animation" id="Animation_3xds6"]
|
||||
resource_name = "RESET"
|
||||
|
@ -643,114 +642,6 @@ _data = {
|
|||
"show": SubResource("Animation_nicro")
|
||||
}
|
||||
|
||||
[sub_resource type="Gradient" id="Gradient_jevda"]
|
||||
interpolation_mode = 2
|
||||
offsets = PackedFloat32Array(0, 0.5, 1)
|
||||
colors = PackedColorArray(0, 0, 0, 0, 1, 1, 1, 1, 0, 0, 0, 0)
|
||||
|
||||
[sub_resource type="GradientTexture2D" id="GradientTexture2D_q43a6"]
|
||||
gradient = SubResource("Gradient_jevda")
|
||||
fill_from = Vector2(0, 0.4)
|
||||
fill_to = Vector2(1, 0.6)
|
||||
metadata/_snap_enabled = true
|
||||
|
||||
[sub_resource type="Animation" id="Animation_ornnh"]
|
||||
resource_name = "idle"
|
||||
length = 6.0
|
||||
loop_mode = 1
|
||||
tracks/0/type = "value"
|
||||
tracks/0/imported = false
|
||||
tracks/0/enabled = true
|
||||
tracks/0/path = NodePath("Glint:anchor_left")
|
||||
tracks/0/interp = 2
|
||||
tracks/0/loop_wrap = false
|
||||
tracks/0/keys = {
|
||||
"times": PackedFloat32Array(0, 0.233333),
|
||||
"transitions": PackedFloat32Array(1, 1),
|
||||
"update": 0,
|
||||
"values": [-1.0, 1.0]
|
||||
}
|
||||
tracks/1/type = "value"
|
||||
tracks/1/imported = false
|
||||
tracks/1/enabled = true
|
||||
tracks/1/path = NodePath("Glint:anchor_right")
|
||||
tracks/1/interp = 2
|
||||
tracks/1/loop_wrap = false
|
||||
tracks/1/keys = {
|
||||
"times": PackedFloat32Array(0, 0.233333),
|
||||
"transitions": PackedFloat32Array(1, 1),
|
||||
"update": 0,
|
||||
"values": [0.0, 2.0]
|
||||
}
|
||||
|
||||
[sub_resource type="Animation" id="Animation_3dab1"]
|
||||
length = 0.001
|
||||
tracks/0/type = "value"
|
||||
tracks/0/imported = false
|
||||
tracks/0/enabled = true
|
||||
tracks/0/path = NodePath("Glint:anchor_left")
|
||||
tracks/0/interp = 1
|
||||
tracks/0/loop_wrap = true
|
||||
tracks/0/keys = {
|
||||
"times": PackedFloat32Array(0),
|
||||
"transitions": PackedFloat32Array(1),
|
||||
"update": 0,
|
||||
"values": [-1.0]
|
||||
}
|
||||
tracks/1/type = "value"
|
||||
tracks/1/imported = false
|
||||
tracks/1/enabled = true
|
||||
tracks/1/path = NodePath("Glint:anchor_right")
|
||||
tracks/1/interp = 1
|
||||
tracks/1/loop_wrap = true
|
||||
tracks/1/keys = {
|
||||
"times": PackedFloat32Array(0),
|
||||
"transitions": PackedFloat32Array(1),
|
||||
"update": 0,
|
||||
"values": [0.0]
|
||||
}
|
||||
|
||||
[sub_resource type="AnimationLibrary" id="AnimationLibrary_bdkm3"]
|
||||
_data = {
|
||||
"RESET": SubResource("Animation_3dab1"),
|
||||
"idle": SubResource("Animation_ornnh")
|
||||
}
|
||||
|
||||
[sub_resource type="Animation" id="Animation_ll1u8"]
|
||||
resource_name = "show"
|
||||
length = 0.4
|
||||
tracks/0/type = "bezier"
|
||||
tracks/0/imported = false
|
||||
tracks/0/enabled = true
|
||||
tracks/0/path = NodePath(".:position:y")
|
||||
tracks/0/interp = 1
|
||||
tracks/0/loop_wrap = true
|
||||
tracks/0/keys = {
|
||||
"handle_modes": PackedInt32Array(0, 0),
|
||||
"points": PackedFloat32Array(-55, -0.25, 0, 0.0709939, 50.4391, 0, -0.251647, 15.8692, 0.2, 0),
|
||||
"times": PackedFloat32Array(0, 0.4)
|
||||
}
|
||||
|
||||
[sub_resource type="Animation" id="Animation_qjs4v"]
|
||||
length = 0.001
|
||||
tracks/0/type = "bezier"
|
||||
tracks/0/imported = false
|
||||
tracks/0/enabled = true
|
||||
tracks/0/path = NodePath(".:position:y")
|
||||
tracks/0/interp = 1
|
||||
tracks/0/loop_wrap = true
|
||||
tracks/0/keys = {
|
||||
"handle_modes": PackedInt32Array(0),
|
||||
"points": PackedFloat32Array(-55, -0.25, 0, 0.25, 0),
|
||||
"times": PackedFloat32Array(0)
|
||||
}
|
||||
|
||||
[sub_resource type="AnimationLibrary" id="AnimationLibrary_o70c6"]
|
||||
_data = {
|
||||
"RESET": SubResource("Animation_qjs4v"),
|
||||
"show": SubResource("Animation_ll1u8")
|
||||
}
|
||||
|
||||
[node name="ShotHUD" type="Control"]
|
||||
layout_mode = 3
|
||||
anchors_preset = 15
|
||||
|
@ -1029,42 +920,3 @@ root_node = NodePath("../..")
|
|||
libraries = {
|
||||
"": SubResource("AnimationLibrary_c3i4w")
|
||||
}
|
||||
|
||||
[node name="ResetPrompt" type="MarginContainer" parent="."]
|
||||
layout_mode = 1
|
||||
anchors_preset = -1
|
||||
anchor_left = 0.5
|
||||
anchor_right = 0.5
|
||||
offset_left = -95.5
|
||||
offset_top = -55.0
|
||||
offset_right = 95.5
|
||||
grow_horizontal = 2
|
||||
theme_override_constants/margin_top = 16
|
||||
|
||||
[node name="ResetInputPrompt" parent="ResetPrompt" instance=ExtResource("14_ik4gg")]
|
||||
clip_children = 2
|
||||
layout_mode = 2
|
||||
text = "❓ - RESET"
|
||||
action = &"shot_reset"
|
||||
label = "RESET"
|
||||
|
||||
[node name="Glint" type="TextureRect" parent="ResetPrompt/ResetInputPrompt"]
|
||||
layout_mode = 1
|
||||
anchors_preset = -1
|
||||
anchor_left = -1.0
|
||||
anchor_bottom = 1.0
|
||||
grow_horizontal = 2
|
||||
grow_vertical = 2
|
||||
texture = SubResource("GradientTexture2D_q43a6")
|
||||
|
||||
[node name="GlintAnimation" type="AnimationPlayer" parent="ResetPrompt/ResetInputPrompt"]
|
||||
libraries = {
|
||||
"": SubResource("AnimationLibrary_bdkm3")
|
||||
}
|
||||
autoplay = "idle"
|
||||
|
||||
[node name="ResetPromptAnimation" type="AnimationPlayer" parent="ResetPrompt"]
|
||||
unique_name_in_owner = true
|
||||
libraries = {
|
||||
"": SubResource("AnimationLibrary_o70c6")
|
||||
}
|
||||
|
|
|
@ -1,5 +0,0 @@
|
|||
[gd_resource type="Curve" format=3 uid="uid://5vyddepvq1ho"]
|
||||
|
||||
[resource]
|
||||
_data = [Vector2(0, 0), 0.0, 0.0, 0, 0, Vector2(0.333, 1), 0.0, 0.0, 0, 0, Vector2(0.667, 1), 0.0, 0.0, 0, 0, Vector2(1, 0), 0.0, 0.0, 0, 0]
|
||||
point_count = 4
|
|
@ -1,13 +0,0 @@
|
|||
[gd_resource type="StandardMaterial3D" format=3 uid="uid://b20gam4x6f8gw"]
|
||||
|
||||
[resource]
|
||||
transparency = 1
|
||||
cull_mode = 2
|
||||
diffuse_mode = 3
|
||||
specular_mode = 1
|
||||
vertex_color_use_as_albedo = true
|
||||
albedo_color = Color(0.9, 1, 1, 0.666667)
|
||||
emission_enabled = true
|
||||
emission = Color(0.368627, 1, 1, 1)
|
||||
emission_energy_multiplier = 0.1
|
||||
use_particle_trails = true
|
|
@ -1,89 +0,0 @@
|
|||
[gd_scene load_steps=13 format=3 uid="uid://dwfckgdxnwwru"]
|
||||
|
||||
[ext_resource type="Texture2D" uid="uid://c0rf8luj8nbom" path="res://src/world/effects/zephyr/zephyr_scale_curve.tres" id="1_opmvf"]
|
||||
[ext_resource type="Curve" uid="uid://5vyddepvq1ho" path="res://src/world/effects/zephyr/zephyr_mesh_curve.tres" id="2_5lvg1"]
|
||||
[ext_resource type="Material" uid="uid://b20gam4x6f8gw" path="res://src/world/effects/zephyr/zephyr_mesh_material.tres" id="3_yxxm1"]
|
||||
|
||||
[sub_resource type="Curve" id="Curve_ddgk4"]
|
||||
min_value = -1.0
|
||||
_data = [Vector2(0, 1), 0.0, 0.0, 0, 0, Vector2(0.25, -1), 0.0, 0.0, 0, 0, Vector2(0.5, 1), 0.0, 0.0, 0, 0, Vector2(0.75, -1), 0.0, 0.0, 0, 0, Vector2(1, 1), 0.0, 0.0, 0, 0]
|
||||
point_count = 5
|
||||
|
||||
[sub_resource type="CurveXYZTexture" id="CurveXYZTexture_4pntk"]
|
||||
curve_y = SubResource("Curve_ddgk4")
|
||||
|
||||
[sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_t5ein"]
|
||||
particle_flag_align_y = true
|
||||
emission_shape = 3
|
||||
emission_box_extents = Vector3(100, 50, 100)
|
||||
spread = 0.0
|
||||
initial_velocity_min = 40.0
|
||||
initial_velocity_max = 40.0
|
||||
directional_velocity_min = 3.99998
|
||||
directional_velocity_max = 3.99998
|
||||
directional_velocity_curve = SubResource("CurveXYZTexture_4pntk")
|
||||
gravity = Vector3(0, 0, 0)
|
||||
scale_curve = ExtResource("1_opmvf")
|
||||
sub_emitter_mode = 1
|
||||
sub_emitter_frequency = 4.0
|
||||
|
||||
[sub_resource type="RibbonTrailMesh" id="RibbonTrailMesh_rhyqq"]
|
||||
material = ExtResource("3_yxxm1")
|
||||
shape = 0
|
||||
sections = 12
|
||||
section_length = 0.87
|
||||
curve = ExtResource("2_5lvg1")
|
||||
|
||||
[sub_resource type="Curve" id="Curve_v0f0t"]
|
||||
min_value = -1.0
|
||||
_data = [Vector2(0.2, 1), 0.0, 0.0, 0, 0, Vector2(0.3, -1), 0.0, 0.0, 0, 0, Vector2(0.4, 1), 0.0, 0.0, 0, 0]
|
||||
point_count = 3
|
||||
|
||||
[sub_resource type="Curve" id="Curve_mp6e7"]
|
||||
min_value = -1.0
|
||||
_data = [Vector2(0, 0), 0.0, 0.0, 0, 0, Vector2(0.0464768, 0.0216568), 0.0, 0.0, 0, 0, Vector2(0.130435, -0.0698431), 0.0, 0.0, 0, 0, Vector2(0.2, 0), 0.0, 20.0, 0, 1, Vector2(0.25, 1), 0.0, 0.0, 0, 0, Vector2(0.35, -1), 0.0, 0.0, 0, 0, Vector2(0.4, 0), 20.0, 0.0, 1, 0, Vector2(0.449102, 0.1875), 0.0, 0.0, 0, 0, Vector2(0.625749, -0.0577831), 0.0, 0.0, 0, 0, Vector2(0.7, 0), 0.0, 0.0, 0, 0]
|
||||
point_count = 10
|
||||
|
||||
[sub_resource type="CurveXYZTexture" id="CurveXYZTexture_j3h3q"]
|
||||
curve_x = SubResource("Curve_v0f0t")
|
||||
curve_y = SubResource("Curve_mp6e7")
|
||||
|
||||
[sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_cn2bt"]
|
||||
particle_flag_align_y = true
|
||||
spread = 0.0
|
||||
directional_velocity_min = 37.0
|
||||
directional_velocity_max = 40.0
|
||||
directional_velocity_curve = SubResource("CurveXYZTexture_j3h3q")
|
||||
gravity = Vector3(0, 0, 0)
|
||||
scale_curve = ExtResource("1_opmvf")
|
||||
|
||||
[sub_resource type="RibbonTrailMesh" id="RibbonTrailMesh_inkcn"]
|
||||
material = ExtResource("3_yxxm1")
|
||||
shape = 0
|
||||
sections = 24
|
||||
curve = ExtResource("2_5lvg1")
|
||||
|
||||
[node name="WaveParticle" type="GPUParticles3D"]
|
||||
amount = 4
|
||||
sub_emitter = NodePath("SwirlParticle")
|
||||
lifetime = 6.0
|
||||
randomness = 1.0
|
||||
fixed_fps = 60
|
||||
interpolate = false
|
||||
visibility_aabb = AABB(-100, -50, -100, 600, 100, 200)
|
||||
local_coords = true
|
||||
trail_enabled = true
|
||||
trail_lifetime = 1.5
|
||||
process_material = SubResource("ParticleProcessMaterial_t5ein")
|
||||
draw_pass_1 = SubResource("RibbonTrailMesh_rhyqq")
|
||||
|
||||
[node name="SwirlParticle" type="GPUParticles3D" parent="."]
|
||||
amount = 1
|
||||
lifetime = 12.0
|
||||
randomness = 1.0
|
||||
visibility_aabb = AABB(-100, -50, -100, 600, 100, 200)
|
||||
local_coords = true
|
||||
trail_enabled = true
|
||||
trail_lifetime = 3.0
|
||||
process_material = SubResource("ParticleProcessMaterial_cn2bt")
|
||||
draw_pass_1 = SubResource("RibbonTrailMesh_inkcn")
|
|
@ -1,8 +0,0 @@
|
|||
[gd_resource type="CurveTexture" load_steps=2 format=3 uid="uid://b1bfyk5c003se"]
|
||||
|
||||
[sub_resource type="Curve" id="Curve_iycj4"]
|
||||
_data = [Vector2(0, 0), 0.0, 0.0, 0, 0, Vector2(0.1, 1), 0.0, 0.0, 0, 0, Vector2(0.65, 1), 0.0, 0.0, 0, 0, Vector2(0.75, 0), 0.0, 0.0, 0, 0]
|
||||
point_count = 4
|
||||
|
||||
[resource]
|
||||
curve = SubResource("Curve_iycj4")
|
Loading…
Reference in New Issue