File: gdscript-no-implicit-class.gd

package info (click to toggle)
geany 2.1-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 39,300 kB
  • sloc: ansic: 168,600; cpp: 77,562; sh: 5,344; makefile: 1,694; cs: 1,233; javascript: 1,024; python: 580; f90: 537; vhdl: 504; sql: 503; lisp: 436; fortran: 389; php: 278; ada: 201; ruby: 163; java: 131; asm: 131; perl: 119; cobol: 88; tcl: 77; erlang: 73; xml: 66; ml: 27; sed: 16; pascal: 15; haskell: 6
file content (105 lines) | stat: -rw-r--r-- 1,785 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
# Derived from https://docs.godotengine.org/en/latest/tutorials/scripting/gdscript/gdscript_basics.html

# A file is a class but it has no name. The name is given only when
# class_name is used.

# Inheritance

extends BaseClass

# (optional) class definition with a custom icon

class_name MyClass, "res://path/to/optional/icon.svg"


# Signals
signal sig


# Member variables

@export_range(start=0, end=100, step=1) var a = 5
@export
var s = "Hello"
@onready var arr = [1, 2, 3]
var dict = {"key": "value", 2: 3}
var typed_var: int
@onready
@export_multiline
var\
inferred_type\
:=\
"String"

# Constants

const ANSWER = 42
const THE_NAME:String = "Charly"

# Enums

enum {UNIT_NEUTRAL, UNIT_ENEMY, UNIT_ALL}
enum Named {THING_1, THING_2, ANOTHER_THING=1}

# Built-in vector types

var v2 = Vector2(1, 2)
var v3 = Vector3(1, 2, 3)


# Function

@master
func some_function(param1: Vector3, param2: int) -> int:
    var local_var = 5

    if param1 < local_var:
        print(param1)
    elif param2 > 5:
        print(param2)
    elif param2 == 2:
        print(20)
    elif param2 <= 2:
        print((-20 %



3) / 5)
    else:
        print("Fail!")

    for i in range(20):
        print(i)

    while param2 != 0:
        param2 -= 1

    var local_var2 = param1 + 3
    return local_var2


# Functions override functions with the same name on the base/parent class.
# If you still want to call them, use '.' (like 'super' in other languages).
@puppet
func something(p1, p2):
    .something(p1, p2)


# Inner class

class Something:
    var a = 10
    const _private_var:String = "hi\n\\escape"
	func foooooooo() -> String:
		print("""
		test\\
		
		test""")
        return ""

# Constructor

func _init():
    print("Constructed!")
    var lv = Something.new()
    print(lv.a)