Godot: GDScript рдХреЗ рд▓рд┐рдП рдРрд░реЗ рд╕реНрд▓рд╛рдЗрд╕рд┐рдВрдЧ

рдХреЛ рдирд┐рд░реНрдорд┐рдд 19 рдордИ 2016  ┬╖  36рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ  ┬╖  рд╕реНрд░реЛрдд: godotengine/godot

рдЕрдЪреНрдЫрд╛ рд╣реЛрдЧрд╛ рдЕрдЧрд░ рд╣рдо рдкрд╛рдЗрдереЛрдирд┐рд╢ рд╕реНрд▓рд╛рдЗрд╕ рдлреАрдЪрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдЬреИрд╕реЗ

array[2:4]
array[2:]
array[:-1]

рдпрд╛ рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рд╕реНрдЯреЗрдк . рдХреЗ рд╕рд╛рде рд╕реНрд▓рд╛рдЗрд╕рд┐рдВрдЧ рдХреЛ рдмрдврд╝рд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ

array[::2]
array[::-1]
feature proposal pr welcome gdscript

рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА

рдЗрдореНрд╣реЛ рдкрд╛рдпрдерди рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХреЗ рд╕рд╛рде : рдЕрдзрд┐рдХ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд╣реИ - рдХрдо рд╡рд░реНрдг рдФрд░ рдЕрдзрд┐рдХ рдХреЙрдореНрдкреИрдХреНрдЯ

+1ред рдФрд░ рдХрдо рднреНрд░рдорд┐рддред рд╣рдо рдЕрдЬрдЧрд░ рдХреА рддрд░рд╣ рд╣реИрдВ, рддреЛ рдЖрдЗрдП рджреБрдирд┐рдпрд╛ рдХреА рд╣рд░ рджреВрд╕рд░реА рднрд╛рд╖рд╛ рд╕реЗ рд╡реНрдпрд╡рд╣рд╛рд░ рдЖрдпрд╛рдд рди рдХрд░реЗрдВ рдпрд╛ рдЬреАрдбреАрд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЕрд╕рдВрдЧрдд рд╣реЛ рдЬрд╛рдПрдЧрд╛ред

рд╕рднреА 36 рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ рдпрд╣ рдЖрд╕рд╛рдиреА рд╕реЗ range рдФрд░ #4716 рд╕реЗ рд╕рдордЭ рдХреЗ рд╕рд╛рде рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ:

var result = array[from:to:step]
# Is the same as:
var result = (array[i] for i in range(from,to,step))

рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдпрд╣рд╛рдВ рдХреЙрдлреАрд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╕рд┐рдВрдЯреИрдХреНрд╕ рдореЗрдВ рднреА рдлреЗрдВрдХрдиреЗ рдХреЗ рд▓рд┐рдП:

x = array[from...to]

рд╣рдо рдЗрд╕реЗ рдЪрд░рдг рдЖрдХрд╛рд░ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрдиреБрдХреВрд▓рд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ (рдХреНрдпреЛрдВрдХрд┐ рд╡реЗ рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ):

x = array[from..step..to]
# or
x = array[from...to:step]

рдЗрдореНрд╣реЛ рдкрд╛рдпрдерди рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХреЗ рд╕рд╛рде : рдЕрдзрд┐рдХ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд╣реИ - рдХрдо рд╡рд░реНрдг рдФрд░ рдЕрдзрд┐рдХ рдХреЙрдореНрдкреИрдХреНрдЯ

рдЗрдореНрд╣реЛ рдкрд╛рдпрдерди рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХреЗ рд╕рд╛рде : рдЕрдзрд┐рдХ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд╣реИ - рдХрдо рд╡рд░реНрдг рдФрд░ рдЕрдзрд┐рдХ рдХреЙрдореНрдкреИрдХреНрдЯ

+1ред рдФрд░ рдХрдо рднреНрд░рдорд┐рддред рд╣рдо рдЕрдЬрдЧрд░ рдХреА рддрд░рд╣ рд╣реИрдВ, рддреЛ рдЖрдЗрдП рджреБрдирд┐рдпрд╛ рдХреА рд╣рд░ рджреВрд╕рд░реА рднрд╛рд╖рд╛ рд╕реЗ рд╡реНрдпрд╡рд╣рд╛рд░ рдЖрдпрд╛рдд рди рдХрд░реЗрдВ рдпрд╛ рдЬреАрдбреАрд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЕрд╕рдВрдЧрдд рд╣реЛ рдЬрд╛рдПрдЧрд╛ред

рдбреА рд╕рд┐рдВрдЯреИрдХреНрд╕ ($ рд╕рд░рдгреА рдХрд╛ рдЖрдХрд╛рд░ рд╣реИ):

array[2..4]
array[2..$]
array[$-1..$]

рд╕рд┐рд░реНрдл рд╕рдВрджрд░реНрдн рдХреЗ рд▓рд┐рдПред рдореИрдВ рд╕рд╣рдордд рд╣реВрдВ рдХрд┐ рдкрд╛рдЗрдерди рдЬреАрдбреАрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЗ рд╕рд╛рде рдмреЗрд╣рддрд░ рдлрд┐рдЯ рдмреИрдарддрд╛ рд╣реИ: рдкреА

рдореИрдВ рдЗрд╕ рдкрд░ рдХрд╛рдо рдХрд░рдиреЗ рдХреЛ рддреИрдпрд╛рд░ рд╣реВрдВред

рдкрд╣рд▓реЗ рдЪрд░рдг рдХреЗ рд░реВрдк рдореЗрдВ рдореИрдВ рдПрдХ рдкреАрдЖрд░ рддреИрдпрд╛рд░ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ рдЬреЛ рдирдХрд╛рд░рд╛рддреНрдордХ рдЕрдиреБрдХреНрд░рдордг рдЬреЛрдбрд╝рддрд╛ рд╣реИред (рдпрджрд┐ рд╣рдо array[:-1] рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддреЗ рд╣реИрдВ рддреЛ рд╣рдореЗрдВ array[-1] рдХреА рднреА рдЕрдиреБрдорддрд┐ рджреЗрдиреА рдЪрд╛рд╣рд┐рдПред)

рд╕рд░рдгреА рд╕реНрд▓рд╛рдЗрд╕ рдХреЛ рдЕрд╕рд╛рдЗрди рдХрд░рдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреНрдпрд╛? рдХреНрдпрд╛ рдЙрдкрдпреЛрдЧ рдХреЗ рдорд╛рдорд▓реЗ рд╣реИрдВ?

рдореБрдЭреЗ рд╡рд┐рд╢реНрд╡рд╛рд╕ рд╣реИ рдХрд┐ рдореБрдЭреЗ рдЗрд╕рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреЛрдб рдорд┐рд▓ рд╕рдХрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЕрдЧрд░ рдХреЛрдИ рдЙрдкрдпреЛрдЧ рдХреЗ рдорд╛рдорд▓реЗ рдирд╣реАрдВ рд╣реИрдВ, рддреЛ рдореИрдВ рдЗрд╕рд╕реЗ рдкрд░реЗрд╢рд╛рди рдирд╣реАрдВ рд╣реЛ рд╕рдХрддрд╛ред

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдПрдХ рдкреНрд░рддрд┐рдмрдВрдз рдЬреЛ рд╣рдореЗрдВ рдХрд░рдирд╛ рд╣реИ рд╡рд╣ рдпрд╣ рд╣реИ рдХрд┐ рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрди рдореВрд▓реНрдпреЛрдВ рдХрд╛ рдЖрдХрд╛рд░ рд╕рдорд╛рди рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП (рдЬреЛ рдкрд╛рдпрдерди рднреА рдПрдХ рдирд┐рд╢реНрдЪрд┐рдд рдЖрдХрд╛рд░ рдХреЗ рд╕рд╛рде рд╕рд░рдгреА рдЬреИрд╕реА рд╕рдВрд░рдЪрдирд╛рдУрдВ рдкрд░ рд▓рд╛рдЧреВ рд╣реЛрддрд╛ рд╣реИ, рдЬреИрд╕реЗ рдмрд╛рдЗрдЯреНрд╕)

рджреВрд╕рд░реЗ рд╢рдмреНрджреЛрдВ рдореЗрдВ, рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХрд╛рд░реНрдп рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП:

var a = range(10)
a[2:5] = [10, 11, 12]
print(a) #[0, 1, 10, 11, 12, 3, 4, 5, 6, 7, 8, 9]

рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╣реЛ рд╕рдХрддрд╛ рд╣реИ:

a = range(10)
a[1::2] = [10, 11, 12, 13, 14]
print(a) # [0, 10, 2, 11, 4, 12, 6, 13, 8, 14]

рд▓реЗрдХрд┐рди рдпрд╣ рд╢рд╛рдпрдж рд╕рдмрд╕реЗ рдЬреНрдпрд╛рджрд╛ рдирд╣реАрдВ рд╣реЛрдЧрд╛:

a = range(10)
a[2:5] = [10]
print(a) # [0, 1, 10, 5, 6, 7, 8, 9]

рд░рд╛рдп?

рд╕рд┐рд░реНрдл рд░рд┐рдХреЙрд░реНрдб рдХреЗ рд▓рд┐рдП, рдореИрдВ рдЕрднреА рднреА рдЗрд╕ рдкрд░ рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рд╣реВрдВред рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдореЗрд░реЗ рдкрд╛рд╕ рдЕрдЧрд▓реЗ рд╕рдкреНрддрд╛рд╣ рдкреАрдЖрд░ рддреИрдпрд╛рд░ рд╣реЛ, рд▓реЗрдХрд┐рди рдЗрд╕рдореЗрдВ рдЕрдзрд┐рдХ рд╕рдордп рд▓рдЧ рд╕рдХрддрд╛ рд╣реИред

@brakhane рдХреЛрдИ рднреА рдЬрд▓реНрджреА рдореЗрдВ рдирд╣реАрдВ рд╣реИ - рдЕрдкрдирд╛ рд╕рдордп рд▓реЗ рд▓реЛ :)

рджреЗрдЦреЗрдВ #5701 рдФрд░ #5765
рдореИрдВрдиреЗ DVector рдФрд░ ByteArray рдмрд╛рдЗрдВрдб рдореЗрдВ рдПрдХ рд╕рд╛рдзрд╛рд░рдг 2-рддрд░реНрдХ рд╕реНрд▓рд╛рдЗрд╕ рдСрдкрд░реЗрд╢рди рдЬреЛрдбрд╝рд╛, рдЬреЛ рдХреБрдЫ рднрд╡рд┐рд╖реНрдп рдХреЗ рдмрд╛рдЗрдВрдб рдХреЗ рд╕рд╛рде GDSript рдирд┐рдореНрди рд╕реНрддрд░ рдХреЗ рд╕рд░рдгреА рдкреНрд░рдХрд╛рд░реЛрдВ (IntArray, StringArray, рдЖрджрд┐) рдкрд░ рд▓рд╛рдЧреВ рд╣реЛ рд╕рдХрддрд╛ рд╣реИред -1 рдХреЛ рд╕рдВрднрд╛рд▓рдиреЗ рдХреЗ рд▓рд┐рдП рдХреЛрдб рдЕрднреА рддрдХ рдирд╣реАрдВ рд╣реИред рдмрд╕ рдПрд╣рд╕рд╛рд╕ рд╣реБрдЖ рдХрд┐ рдореИрдВрдиреЗ рдЕрднреА рдЙрд╕ рд╕реБрд╡рд┐рдзрд╛ рдХреЛ рдЫреЛрдбрд╝ рджрд┐рдпрд╛ рд╣реИред

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЗрд╕реЗ 3.0 рдХреЗ рд▓рд┐рдП рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП, рд╡рд░реНрддрдорд╛рди рдореЗрдВ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдХреЗрд╡рд▓ subarray(from, to) рд╡рд┐рдзрд┐ рд╣реИ рдЬрд┐рд╕реЗ PoolByteArray рдХреЗ рд▓рд┐рдП рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЕрдиреНрдп рдмрд┐рд▓реНрдЯрд┐рди рдкреНрд░рдХрд╛рд░реЛрдВ рдХреЗ рд▓рд┐рдП рдирд╣реАрдВ, рдЗрд╕рд▓рд┐рдП рдпрд╣ рдмрд╣реБрдд рдЕрд╕рдВрдЧрдд рд╣реИред рдЕрдЧрд░ рд╣рдо 3.0 рдХреЗ рд▓рд┐рдП рдХреБрдЫ рд╕рдВрдЧрдд рд▓рд╛рдЧреВ рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдореИрдВ рдПрдХ рдПрдкреАрдЖрдИ рдкреЗрд╢ рдХрд░рдиреЗ рд╕реЗ рдмрдЪрдиреЗ рдХреЗ рд▓рд┐рдП # 5879 (рдЬрд┐рд╕реЗ рдЕрднреА рддрдХ рдПрдХ рд╕реНрдерд┐рд░ рд░рд┐рд▓реАрдЬ рдореЗрдВ рд╢рд┐рдк рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛) рдХреЛ рд╡рд╛рдкрд╕ рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рд╕реНрддрд╛рд╡ рдХрд░рддрд╛ рд╣реВрдВ рдЬрд┐рд╕реЗ рдмрд╛рдж рдореЗрдВ рдмрджрд▓рд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред

рдореЗрд░рд╛ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди 98% рд╣реЛ рдЧрдпрд╛ рд╣реИ (рдпрд╣ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдХреБрдЫ рдореЗрдореЛрд░реА рд▓реАрдХ рдФрд░ рдпрд╛рджреГрдЪреНрдЫрд┐рдХ рдХреНрд░реИрд╢ рд╣реИрдВ рдЬрд┐рдиреНрд╣реЗрдВ рдореЗрд░реЗ рдкрд╛рд╕ рдбреАрдмрдЧ рдХрд░рдиреЗ рдХрд╛ рд╕рдордп рдирд╣реАрдВ рдерд╛), рд▓реЗрдХрд┐рди рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдЬреАрд╡рди рд╕рдордп рдХреА рдмрд╛рдзрд╛рдУрдВ рдХреЗ рдХрд╛рд░рдг рдореИрдВ рдЗрд╕реЗ рд╕рдорд╛рдкреНрдд рдирд╣реАрдВ рдХрд░ рдкрд╛рдКрдВрдЧрд╛ред

рдореИрдВ рдЕрдкрдиреЗ рдбрдмреНрд▓реНрдпреВрдЖрдИрдкреА рдХреЛ рдПрдХ рд╢рд╛рдЦрд╛ рдореЗрдВ рдбрд╛рд▓рдиреЗ рдХреЗ рд▓рд┐рдП рддреИрдпрд╛рд░ рд╣реВрдВ рддрд╛рдХрд┐ рдХреЛрдИ рдЗрд╕реЗ (рдореЗрд░реА рдорджрдж) рдХрд░ рд╕рдХреЗред рдореИрдВ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХреЗ рд╕рдВрдмрдВрдз рдореЗрдВ рдкреНрд░рд╢реНрдиреЛрдВ рдореЗрдВ рд╕рд╣рд╛рдпрддрд╛ рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВред рдпрд╣ рд╢рд░реНрдо рдХреА рдмрд╛рдд рд╣реЛрдЧреА рдЕрдЧрд░ рдореЗрд░рд╛ рдкреНрд░рдпрд╛рд╕ рдмреЗрдХрд╛рд░ рдЬрд╛ рд░рд╣рд╛ рд╣реИ (рдореИрдВ рдЗрд╕ рдкрд░ рдЕрдм рддрдХ рд▓рдЧрднрдЧ 40 рдШрдВрдЯреЗ рдЦрд░реНрдЪ рдХрд░рддрд╛ рд╣реВрдВ)

рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рд╕реБрдВрджрд░ рд╕реБрд╡рд┐рдзрд╛ рдкреВрд░реНрдг рд╣реИ (рдФрд░ рдореБрдЭреЗ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЗрд╕ рдмрд╛рдд рдкрд░ рдмрд╣реБрдд рдЧрд░реНрд╡ рд╣реИ рдХрд┐ рдпрд╣ рдХреИрд╕реЗ рдкреВрд░рд╛ рд╣реБрдЖ), рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рдЕрдзрд┐рдХрд╛рдВрд╢ рд╕рд░рдгреА рдкреНрд░рдХрд╛рд░реЛрдВ рдХреЗ рд▓рд┐рдП рдкрд╛рдпрдерди рдореЗрдВ рдХрд╛рдо рдХрд░рдирд╛, рдЬрд┐рд╕рдореЗрдВ рдЕрд╕рд╛рдЗрдирдореЗрдВрдЯ рд╢рд╛рдорд┐рд▓ рд╣реИ ( a[1:4] = [1,2,3] рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдХрд░рддрд╛ рд╣реИ a[1:3] = b[10:13:2] рдФрд░ рдЗрд╕рдХреЗ рд╡рд┐рдкрд░реАрдд)ред

рд╣рд╛рд▓рд╛рдВрдХрд┐ рдХреБрдЫ рдЪреЗрддрд╛рд╡рдиреА рд╣реИрдВ:

  • рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдереЛрдбрд╝рд╛ рдЬрдЯрд┐рд▓ рд╣реИ, рдФрд░ рдЖрдкрдХреЛ рдЗрд╕реЗ рд╕рдордЭрдиреЗ рдХреЗ рд▓рд┐рдП Variant.cpp рдФрд░variant_op рдХреЗ рд╕рд╛рде-рд╕рд╛рде рдмрд╛рдЗрдЯрдХреЛрдб рджреБрднрд╛рд╖рд┐рдпрд╛ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреБрдЫ рд╕рдордЭ рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдПред
  • рдЕрдкрдиреЗ рд╡рд┐рд╡реЗрдХ рдХреЛ рдмрдирд╛рдП рд░рдЦрдиреЗ рдФрд░ рдбрд┐рдмрдЧрд┐рдВрдЧ рдореЗрдВ рдорджрдж рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдореБрдЭреЗ рдХреБрдЫ рдореИрдХреНрд░реЛрдЬрд╝ рдХреЛ рд╡реИрд░рд┐рдПрдВрдЯ_рдСрдк рдореЗрдВ рд╕рдордХрдХреНрд╖ рдЯреЗрдореНрдкреНрд▓реЗрдЯ рдХреЗ рд╕рд╛рде рдмрджрд▓рдирд╛ рдкрдбрд╝рд╛, IMO рд╡реЗ рдХреЛрдб рдХреЛ рдЕрдзрд┐рдХ рдкрдардиреАрдп рдмрдирд╛рддреЗ рд╣реИрдВ (рдФрд░ рдкрд╣рд▓реЗ рдХреА рддрд░рд╣ рддреЗрдЬрд╝ рдСрдкреНрдЯрд┐рдорд╛рдЗрдЬрд╝реЗрд╢рди рдХреЗ рд╕рд╛рде), рд▓реЗрдХрд┐рди рдЪреВрдВрдХрд┐ рдХреЛрдб 2.1 рдкрд░ рдЖрдзрд╛рд░рд┐рдд рд╣реИ, рд╡рд╣рд╛рдБ рд╢рд╛рдпрдж 3.0 рдХреЗ рд╕рд╛рде рд╕рдВрдХрд▓рди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреБрдЫ рд░рд┐рдлреИрдХреНрдЯрд░рд┐рдВрдЧ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ; рд╕рд╛рде рд╣реА, рдЪреВрдВрдХрд┐ рдХреЛрдб рдбрдмреНрд▓реНрдпреВрдЖрдИрдкреА рд╣реИ, рдореЗрд░реЗ рдкрд╛рд╕ рдЗрд╕реЗ рдЕрд▓рдЧ-рдЕрд▓рдЧ рдХрд╛рдореЛрдВ рдореЗрдВ рд╡рд┐рднрд╛рдЬрд┐рдд рдХрд░рдиреЗ рдХрд╛ рд╕рдордп рдирд╣реАрдВ рдерд╛, рдЗрд╕рд▓рд┐рдП рдХрднреА-рдХрднреА рдореИрдХреНрд░реЛ рдХреЛ рдЯреЗрдореНрдкрд▓реЗрдЯ рд╕реЗ рдмрджрд▓ рджрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдЬрдмрдХрд┐ рд╕рд╛рде рд╣реА рд╕рд╛рде рднрд┐рдиреНрди рддрд░реНрдХ рднреА рдЬреЛрдбрд╝рд╛ рдЬрд╛рддрд╛ рд╣реИ; рдпрд╣ рджреЛрдиреЛрдВ рдореЗрдВ рдЕрдВрддрд░ рдХрд░рдирд╛ рдереЛрдбрд╝рд╛ рдХрдард┐рди (рд▓реЗрдХрд┐рди рдмрд╣реБрдд рдХрдард┐рди рдирд╣реАрдВ) рдмрдирд╛рддрд╛ рд╣реИ
  • рдкреБрд░рд╛рдиреЗ рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдХреЗ рд╕рд╛рде рдмрд╛рдЗрдЯ рдХреЛрдб рджреБрднрд╛рд╖рд┐рдпрд╛ рдХреЛ рдЕрд╕рдВрдЧрдд рдмрдирд╛рдиреЗ рд╕реЗ рдмрдЪрдиреЗ рдХреЗ рд▓рд┐рдП, рдореБрдЭреЗ рдПрдХ рдирдпрд╛ рдбреЗрдЯрд╛ рдкреНрд░рдХрд╛рд░ slice рдкреЗрд╢ рдХрд░рдирд╛ рдкрдбрд╝рд╛, рдЬрд┐рд╕реЗ рд╕рдВрдкрд╛рджрдХ рдореЗрдВ рдЙрдЬрд╛рдЧрд░ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдпрд╣ рдХрд╛рдо рдкреВрд░рд╛ рд╣реЛ рдЧрдпрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдХреБрдЫ рдЦреБрд░рджреБрд░реЗ рдХрд┐рдирд╛рд░реЗ рд╣реИрдВред
  • рдЬреИрд╕рд╛ рдХрд┐ рдкрд╣рд▓реЗ рд╣реА рдХрд╣рд╛ рдЧрдпрд╛ рд╣реИ, "рдХреЗрд╡рд▓" рдореБрджреНрджрд╛ рдХреБрдЫ рд╕реНрдореГрддрд┐ рднреНрд░рд╖реНрдЯрд╛рдЪрд╛рд░ рд╣реИ рдЬрд┐рд╕реЗ рдореИрдВ рд╕рдордЭ рдирд╣реАрдВ рдкрд╛рдпрд╛; рдЬреЛ рдХреЛрдИ рднреА рдЗрд╕реЗ рдбрд┐рдмрдЧ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реИ рдЙрд╕реЗ рдЗрд╕ рдмрд╛рдд рд╕реЗ рдкрд░рд┐рдЪрд┐рдд рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП рдХрд┐ рдЧреЛрдбреЛрдЯ рдмрд╛рдЗрдЯрдХреЛрдб рджреБрднрд╛рд╖рд┐рдпрд╛ рдХреИрд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ

рдореБрдЭреЗ рдмрддрд╛рдПрдВ рдХрд┐ рдХреНрдпрд╛ рдореБрдЭреЗ рдХрд╣реАрдВ рдХреЛрдб рдбрд╛рд▓рдирд╛ рдЪрд╛рд╣рд┐рдПред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЧреЛрдбреЛрдЯ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЗрдВрдЯрд░реНрдирд▓ рд╕реЗ рдкрд░рд┐рдЪрд┐рдд рдХреЛрдИ рд╡реНрдпрдХреНрддрд┐ 10 рдШрдВрдЯреЗ рдпрд╛ рдЙрд╕рд╕реЗ рдХрдо рд╕рдордп рдореЗрдВ рдХрд┐рдВрдХ рдХреЛ рджреВрд░ рдХрд░ рджреЗрдЧрд╛ред

@brakhane рдЪреВрдВрдХрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдХрд╛рдо рд╣реЛ рдЪреБрдХрд╛ рд╣реИ, рдпрд╣ рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ рд╣реЛрдЧрд╛ рдпрджрд┐ рдЖрдк рдЕрдкрдиреЗ рдХрд╛рдВрдЯреЗ рдореЗрдВ рдХреЛрдб рдбрд╛рд▓рддреЗ рд╣реИрдВ рдФрд░ рдПрдХ рдкреБрд▓ рдЕрдиреБрд░реЛрдз рдЦреЛрд▓рддреЗ рд╣реИрдВред рдЗрд╕ рдкреНрд░рдХрд╛рд░ рдЕрдиреНрдп рд▓реЛрдЧ рдЖрдкрдХреЗ рдХреЛрдб рдХреА рд╕рдореАрдХреНрд╖рд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдЙрд╕ рдкрд░ рдЯрд┐рдкреНрдкрдгреА рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

рдпреЗ рдХреИрд╕рд╛ рдЪрд▓ рд░рд╣рд╛ рд╣реИ?
рдпрд╣ рдЖрдЧреЗ рджреЗрдЦ рд░рд╣реЗ рд╣реИрдВред :)

@ bojidar-bg рд╣рдорд╛рд░рд╛ рдирдпрд╛ gdscript рджреЗрд╡ рд╣реИ, рдЗрд╕реЗ рдЖрдЬрд╝рдорд╛рдиреЗ рдХреА рдкрд░рд╡рд╛рд╣ рд╣реИ? :рдкреА

рдареАрдХ рд╣реИ, 3.1 . рдХреЗ рд▓рд┐рдП рдзрдХреНрдХрд╛ рджреЗрдЧрд╛

рдмрд╕ рдпрд╣ рдиреЛрдЯ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рдерд╛ рдХрд┐ рд╕рдмрд░реЗ рд╡рд┐рдзрд┐ рд╕рдорд╛рд╡реЗрд╢реА рд╢реНрд░реЗрдгрд┐рдпреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреА рд╣реИ, рдЬрдмрдХрд┐ рдпрд╣ (рдЙрдореНрдореАрдж рд╣реИ) рдкрд╛рдпрдерди-рд╢реИрд▓реА рд╕реНрд▓рд╛рдЗрд╕рд┐рдВрдЧ рд╢реНрд░реЗрдгрд┐рдпреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдЧреАред

рдореИрдВ рдЙрдореНрдореАрдж рд╕реЗ рдХрд╣рддрд╛ рд╣реВрдВ рдХреНрдпреЛрдВрдХрд┐ рд╕рдмрд░реЗ рд╡рд┐рдзрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдереЛрдбрд╝рд╛ рджрд░реНрджрдирд╛рдХ рд╣реИ, рдЖрдкрдХреЛ рдпрд╣ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╡рд┐рд╢реЗрд╖ рдЖрд╡рд░рдг рд▓рд┐рдЦрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рдХрд┐ рдЖрдк рдХрднреА рднреА рдХреЛрд╢рд┐рд╢ рди рдХрд░реЗрдВ рдФрд░ рд╢реВрдиреНрдп рдЪреМрдбрд╝рд╛рдИ рдЯреБрдХрдбрд╝рд╛ рдмрдирд╛рдПрдВ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рдпрджрд┐ рдЖрдк рдмрдлрд░ рдХреЗ рд╣рд┐рд╕реНрд╕реЗ рдХреЛ рджреЛ рдмрд╛рд░ рдХрд╛рдЯрдХрд░ рдЙрдкрднреЛрдЧ рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░ рд░рд╣реЗ рд╣реИрдВ, 'рд╢реЗрд╖' рдЯреБрдХрдбрд╝рд╛ рд╢реВрдиреНрдп рд▓рдВрдмрд╛рдИ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ), рдФрд░ рдПрдХ рдЯреБрдХрдбрд╝рд╛ рдХрд╛ рдЕрдиреБрд░реЛрдз рдХрд░рддреЗ рд╕рдордп -1 рдХреЛ рд╕рднреА рд▓рдВрдмрд╛рдИ рдореЗрдВ рдЬреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдПред

рд╕рдВрдкрд╛рджрд┐рдд рдХрд░реЗрдВ: рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдореИрдВ рдЕрдкрдиреЗ рд╕рд┐рд░ рдХреЗ рдКрдкрд░ рд╕реЗ рдРрд╕реА рд╕реНрдерд┐рддрд┐ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдирд╣реАрдВ рд╕реЛрдЪ рд╕рдХрддрд╛ рдЬрд╣рд╛рдВ рдЖрдкрдХреЛ рдЕрдВрдд рдЯреБрдХрдбрд╝рд╛ рдореЗрдВ -1 рдЬреЛрдбрд╝рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реЛрдЧреА, рдЬрдм рддрдХ рдХрд┐ рдЖрдк рдирд┐рд░рдВрддрд░ рд╕рдВрдЦреНрдпрд╛ рдмрд╛рдЗрдЯреНрд╕ рдХреЛ рдЯреБрдХрдбрд╝рд╛ рдирд╣реАрдВ рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдФрд░ рдЗрд╕рд▓рд┐рдП -1 рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдЗрд╕реЗ рд▓рд┐рдЦрддреЗ рд╕рдордпред

рдЗрд╕рдХреЗ рд╕рд╛рде рдХреЛрдИ рдкреНрд░рдЧрддрд┐?
рдореБрдЭреЗ рдЕрднреА рдкрддрд╛ рдЪрд▓рд╛ рд╣реИ рдХрд┐ рдореИрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЬреАрдбреАрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ рдЗрд╕ рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВ

3.1 рдХреЗ рд░реВрдк рдореЗрдВ рдЕрдЧрд▓реЗ рдореАрд▓ рдХреЗ рдкрддреНрдерд░ рдкрд░ рдЬрд╛рдирд╛ рдЕрдм рдлреАрдЪрд░ рдлрд╝реНрд░реАрдЬрд╝ рд╣реЛ рдЧрдпрд╛ рд╣реИ (рдФрд░ 3.2 рдореЗрдВ рд╡рд┐рднрд┐рдиреНрди GDScript рд╕реБрдзрд╛рд░реЛрдВ рдХреА рдпреЛрдЬрдирд╛ рд╣реИ)ред

рдирдорд╕реНрддреЗ рдореИрдВ рдЕрднреА рдЗрд╕ рдордж рдореЗрдВ рдЖрдпрд╛ рдерд╛ рдФрд░ рдЕрдкрдиреЗ рджреЛ рд╕реЗрдВрдЯ рдореЗрдВ рдлреЗрдВрдХрдирд╛ рдЪрд╛рд╣рддрд╛ рдерд╛ред

рдпрджрд┐ рдХрд┐рд╕реА рднреА рддрд░рд╣ рд╕реЗ рд╕реНрдорд╛рд░реНрдЯ рд╕реНрд▓рд╛рдЗрд╕рд┐рдВрдЧ рд╡реНрдпрдХреНрддрд┐рдЧрдд рд╕рд░рдгреА рдЕрдиреБрдХреНрд░рдордг рдХреЗ рдкреНрд░рджрд░реНрд╢рди рдХреЛ рдкреНрд░рднрд╛рд╡рд┐рдд рдХрд░рддреА рд╣реИ рддреЛ рд╣рдореЗрдВ рд╢рд╛рдпрдж рдЗрд╕рд╕реЗ рдмрдЪрдирд╛ рдЪрд╛рд╣рд┐рдПред рдЬреАрдбреАрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ рд╡рд╕реНрддреБрдУрдВ рдкрд░ рдкреБрдирд░рд╛рд╡реГрддрд┐ рдХрд░рдирд╛ рдПрдХ рдЙрдкрдпреЛрдЧ-рдорд╛рдорд▓реЗ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рдЖрдо рд╣реИ рддрд╛рдХрд┐ рдереЛрдбрд╝реА рд╕реА рд╡рд╛рдХреНрдпрд╛рддреНрдордХ рдЪреАрдиреА рдХреЗ рд▓рд┐рдП рдкреНрд░рджрд░реНрд╢рди рджрдВрдб рднреБрдЧрддрдирд╛ рдкрдбрд╝реЗред

рдЬрдмрдХрд┐ рдореИрдВ рд╕рд┐рдВрдЯреИрдХреНрдЯрд┐рдХ рдЪреАрдиреА рдХреЗ рд▓рд┐рдП рд╣реВрдВ, рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдФрд╕рдд рдЧреЗрдо рдбреЗрд╡рд▓рдкрд░ рдХреЛ рдкрд░рдорд╛рдгреБрддрд╛ рдФрд░ рдЧрддрд┐ рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рдЙрдЪрд┐рдд рдЕрдкреЗрдХреНрд╖рд╛рдПрдВ рд╣реЛрддреА рд╣реИрдВ рдЬрдм рдЬреАрдбреАрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ рдмреНрд░реИрдХреЗрдЯ, рдШреБрдВрдШрд░рд╛рд▓реЗ рдмреНрд░реЗрд╕рд┐рдЬрд╝, рдХреЛрд╖реНрдардХ рдЗрддреНрдпрд╛рджрд┐ рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рдХреБрдЫ рднреА рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдпрджрд┐ рд╡рд╣ рдЕрдиреБрдмрдВрдз рдЯреВрдЯ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдпрд╣ рдкреНрд░рд╢реНрди рдЕрдзрд┐рдХ рдЕрд╕реНрдкрд╖реНрдЯ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ рдХрд┐ рдореБрдЭреЗ GDNative рдХреЛ рдХрдм рдХреБрдЫ рдзрдХреНрдХрд╛ рджреЗрдирд╛ рдЪрд╛рд╣рд┐рдПред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдПрдХ рдЕрдЪреНрдЫрд╛ "sub_array ()" рдпрд╛ "рд╕реНрд▓рд╛рдЗрд╕ ()" рдлрд╝рдВрдХреНрд╢рди рдЬрд╛рдиреЗ рдХрд╛ рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рддрд░реАрдХрд╛ рд╣реЛрдЧрд╛ рдХреНрдпреЛрдВрдХрд┐ рддрдм (рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ) рдЖрдк рдореМрдЬреВрджрд╛ рд╕рд░рдгреА рдЕрдиреБрдХреНрд░рдордг рдХреЛрдб рдХреЛ рдпрдерд╛рд╡рдд рд░рдЦ рд╕рдХрддреЗ рд╣реИрдВред

рдХреНрдпрд╛ рдЗрд╕ рдкрд░ рдХреЛрдИ рдкреНрд░рдЧрддрд┐ рд╣реБрдИ рд╣реИ? рдореИрдВ рдПрдХ рдкреАрдЖрд░ рдЬрдорд╛ рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВ рдЬреЛ рдЗрд╕ рддрд░рд╣ рдХреЗ рддрд░реАрдХреЛрдВ рдХреЛ рдЬреЛрдбрд╝рддрд╛ рд╣реИред

рдлрд┐рд░ рднреА рдЪрд╛рд╣рддреЗ рд╣реИрдВ рдХрд┐ рдЗрд╕реЗ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЬрд╛рдПред рдХреЛрдИ рдЦрд╝рдмрд░?

рд╡рд╣реА, рдореИрдВ рдПрдХ рд╕рд░рдгреА рд╕реЗ рдПрдХ рд╕рдмрд╕реЗрдЯ рд▓реЗрдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ, рдФрд░ рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рджреЛрдиреЛрдВ рд╕реВрдЪреА рд╕рдордЭ рдФрд░ рдПрдХ рд╕рд╛рдорд╛рдиреНрдп рд╕рд░рдгреА рдХреЛ рдЯреБрдХрдбрд╝рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдлрд╝рдВрдХреНрд╢рди рдореМрдЬреВрдж рдирд╣реАрдВ рд╣реИред рдЗрдирдореЗрдВ рд╕реЗ рдПрдХ рдХреЛ рд╢рд╛рдпрдж рдЬреЛрдбрд╝рд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП, рдХреНрдпреЛрдВрдХрд┐ рд╡рд┐рдХрд▓реНрдк рдереЛрдбрд╝рд╛ рд╡рд░реНрдмреЛрдЬрд╝ рд╣реИред

@bojidar-bg

рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ рдпрд╣ рдЖрд╕рд╛рдиреА рд╕реЗ range рдФрд░ #4716 рд╕реЗ рд╕рдордЭ рдХреЗ рд╕рд╛рде рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ:

var result = array[from:to:step]
# Is the same as:
var result = (array[i] for i in range(from,to,step))

рдпрд╣ рд╡рд░реНрддрдорд╛рди рдореЗрдВ рд╕рд╣реА рдирд╣реАрдВ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдЕрднреА рддрдХ рд╕рдордЭ рдХреЛ рд╢рд╛рдорд┐рд▓ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рд╡рд░реНрддрдорд╛рди рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕ рд╣реИ:

var result = []
for i in range(from, to, step):
    result.append(array[i])

рд╡рд┐рдЪрд┐рддреНрд░ рд░реВрдк рд╕реЗ, рджреЗрд╡реЛрдВ рдиреЗ рдкрдардиреАрдпрддрд╛ рдХреЗ рдХрд╛рд░рдгреЛрдВ рд╕реЗ рдЗрд╕ рд╕реБрд╡рд┐рдзрд╛ (#15222) рдХреЗ рд▓рд┐рдП рдПрдХ рдкреАрдЖрд░ рдХреЛ рдЕрд╕реНрд╡реАрдХрд╛рд░ рдХрд░ рджрд┐рдпрд╛ред

рд╣рдордиреЗ рдХрдИ рдореБрдЦреНрдп рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЗ рд╕рд╛рде рдЖрдИрдЖрд░рд╕реА рдкрд░ рдЗрд╕ рдкрд░ рдЪрд░реНрдЪрд╛ рдХреА рд╣реИ, рдФрд░ рд╕рд╛рдорд╛рдиреНрдп рднрд╛рд╡рдирд╛ рдпрд╣ рд╣реИ рдХрд┐ рд╕реВрдЪреА рд╕рдордЭ рдХрд╛ рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХреЛрдб рдХреЛ рдкрдврд╝рдиреЗ рдореЗрдВ рдХрд╛рдлреА рдХрдард┐рди рдмрдирд╛рддрд╛ рд╣реИ, рдФрд░ рдЬреАрдбреАрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЗ рдбрд┐рдЬрд╛рдЗрди рд╕рд┐рджреНрдзрд╛рдВрддреЛрдВ рдХреЗ рдЦрд┐рд▓рд╛рдл рдЬрд╛рддрд╛ рд╣реИ рддрд╛рдХрд┐ рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХреЛ рд╕реАрдзреЗ рдФрд░ рдЖрд╕рд╛рдиреА рд╕реЗ рдкрдврд╝рд╛ рдЬрд╛ рд╕рдХреЗред

рд╡реНрдпрдХреНрддрд┐рдЧрдд рд░реВрдк рд╕реЗ, рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдПрдХ рдкрдВрдХреНрддрд┐ рддреАрди рд╕реЗ рдЕрдзрд┐рдХ рдХрдард┐рди рдирд╣реАрдВ рд╣реИред рдХрд┐рд╕реА рдФрд░ рдХреЛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЗрд╕ рдмрд╛рддрдЪреАрдд рдХреЛ рдлрд┐рд░ рд╕реЗ рдЦреЛрд▓рдирд╛ рдЪрд╛рд╣рд┐рдП?

@SnailBones рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдПрдХ рдЕрдВрддрд░реНрдирд┐рд╣рд┐рдд Array.slice() рд╡рд┐рдзрд┐ рдпрд╣рд╛рдБ рд╕рдмрд╕реЗ рдЕрдзрд┐рдХ рд╕рдордЭ рдореЗрдВ рдЖрддрд╛ рд╣реИред рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЬреИрд╕реА рднрд╛рд╖рд╛рдУрдВ рдореЗрдВ рдПрдХ рд╕рдорд╛рди рдХрд╛рд░реНрдп рд╣реЛрддрд╛ рд╣реИ , рдФрд░ рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рд╡рд╣рд╛рдВ рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ: рдереЛрдбрд╝рд╛_рд╕реНрдорд╛рдЗрд▓рд┐рдВрдЧ_рдлреЗрд╕:

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╕реВрдЪреА рдХреА рд╕рдордЭ рдЕрдЪреНрдЫреА рд╣реЛрдЧреА, рд▓реЗрдХрд┐рди рдПрдХ рдЕрд▓рдЧ Array.slice() рд╣реЛрдирд╛ рдЙрдкрдпреЛрдЧреА рд╣реЛрдЧрд╛ред

рдореИрдВ рдЕрднреА рдПрдХ Array.slice рдкрджреНрдзрддрд┐ рдкрд░ рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рд╣реВрдБ

рдХреНрдпрд╛ рдпрд╣ рдПрдХ рдирдпрд╛ рд╡реЗрд░рд┐рдПрдВрдЯ рд╕реНрд▓рд╛рдЗрд╕ рдкреНрд░рдХрд╛рд░ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрдзрд┐рдХ рдкрд╕рдВрдж рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ рдЬреИрд╕реЗ рдХрд┐ рдкрд╛рдЗрдерди рдпрд╣ рдХреИрд╕реЗ рдХрд░рддрд╛ рд╣реИ рдЬрд╣рд╛рдВ рдЙрд╕ рд╕реНрд▓рд╛рдЗрд╕ рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЛ рдСрдкрд░реЗрдЯрд░ рдХреЗ рд░реВрдк рдореЗрдВ рд╕рд░рдгреА рдореЗрдВ рдЦрд┐рд▓рд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдпрд╛ рд╕рд░рдгреА рдореЗрдВ рд╕реНрд▓рд╛рдЗрд╕ рдлрд╝рдВрдХреНрд╢рди рдХреЛ рдХреЙрд▓ рдХреЗ рд▓рд┐рдП рдХрдВрдкрд╛рдЗрд▓рд░ рдореЗрдВ рд╣рд╛рд░реНрдб-рдХреЛрдб рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ? рдореЗрд░реЗ рдкрд╛рд╕ slice рд╡рд┐рдзрд┐ рд╣реЛ рдЧрдИ рд╣реИ рдФрд░ рдореИрдВ start:end:delta рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХреЛ gdscript рдЕрдиреБрдХреНрд░рдордг рдореЗрдВ рдЬреЛрдбрд╝рдиреЗ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░ рд░рд╣рд╛ рд╣реВрдВред

рд╕реНрд▓рд╛рдЗрд╕ рдСрдмреНрдЬреЗрдХреНрдЯ рдЕрдзрд┐рдХ "рдкрд╛рдпрдердирд┐рдХ" рд╣реЛрдЧрд╛;) рд▓реЗрдХрд┐рди рд╣рд╛рд░реНрдб-рдХреЛрдбреЗрдб рд╡рд┐рдзрд┐
рд▓рдЧрднрдЧ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рддреЗрдЬ рд╣реЛрдЧрд╛ред рдХрд┐рд╕реА рднреА рддрд░рд╣ рд╕реЗ, рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛
рдкреНрд░рд╛рд░рдВрдн: рдЕрдВрдд : рдбреЗрд▓реНрдЯрд╛ рд╕рд┐рдВрдЯреИрдХреНрд╕
рдмрд╣реБрдд рдорджрджрдЧрд╛рд░ рд╣реЛрдЧрд╛ред

рд╢рдирд┐рд╡рд╛рд░, 20 рдЬреБрд▓рд╛рдИ, 2019 рдХреЛ рд╢рд╛рдо 6:05 рдмрдЬреЗ рдХреИрдорд░реВрди рд░реАрдЗрдХреНрд╕ рдиреЛрдЯрд┐рдлрд┐рдХреЗрд╢рди @github.com
рд▓рд┐рдЦрд╛ рдерд╛:

рдХреНрдпрд╛ рдПрдХ рдирдпрд╛ рд╡реИрд░рд┐рдПрдВрдЯ рд╕реНрд▓рд╛рдЗрд╕ рдкреНрд░рдХрд╛рд░ рдмрдирд╛рдирд╛ рдЕрдзрд┐рдХ рдкрд╕рдВрдж рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ рдЬреИрд╕реЗ рдХрд┐ рдХреИрд╕реЗ
рдкрд╛рдпрдерди рд╡рд╣ рдХрд░рддрд╛ рд╣реИ рдЬрд╣рд╛рдВ рдЙрд╕ рд╕реНрд▓рд╛рдЗрд╕ рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЛ рд╕рд░рдгреА рдореЗрдВ рдПрдХ рдХреЗ рд░реВрдк рдореЗрдВ рдЦрд┐рд▓рд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ
рдСрдкрд░реЗрдЯрд░, рдпрд╛ рд╕рд░рдгреА рдореЗрдВ рд╕реНрд▓рд╛рдЗрд╕ рдлрд╝рдВрдХреНрд╢рди рдХреЛ рдХреЙрд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП
рдкрд╛рд░реНрд╕рд░ рдореЗрдВ рд╣рд╛рд░реНрдб-рдХреЛрдбреЗрдб? рдореЗрд░реЗ рдкрд╛рд╕ рд╕реНрд▓рд╛рдЗрд╕ рд╡рд┐рдзрд┐ рд╣реЛ рдЧрдИ рд╣реИ рдФрд░ рдореИрдВ рджреЗрдЦ рд░рд╣рд╛ рд╣реВрдБ
рдкреНрд░рд╛рд░рдВрдн: рдЕрдВрдд : рдбреЗрд▓реНрдЯрд╛ рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХреЛ gdscript рдЕрдиреБрдХреНрд░рдордг рдореЗрдВ рдЬреЛрдбрд╝рдиреЗ рдореЗрдВред

-
рдЖрдк рдЗрд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдХреНрдпреЛрдВрдХрд┐ рдЖрдкрдиреЗ рдЯрд┐рдкреНрдкрдгреА рдХреА рдереАред
рдЗрд╕ рдИрдореЗрд▓ рдХрд╛ рд╕реАрдзреЗ рдЙрддреНрддрд░ рджреЗрдВ, рдЗрд╕реЗ GitHub рдкрд░ рджреЗрдЦреЗрдВ
https://github.com/godotengine/godot/issues/4715?email_source=notifications&email_token=ACJUE6P4A4CDQWUS4PSQQH3QAOK2JA5CNFSM4CEI4JPKYY3PNVWWK3TUL52HS4DFVREXG43VMVBJ4LOORDNMVX
рдпрд╛ рдереНрд░реЗрдб рдХреЛ рдореНрдпреВрдЯ рдХрд░реЗрдВ
https://github.com/notifications/unsubscribe-auth/ACJUE6LOTSF243FOYXXR2SDQAOK2JANCNFSM4CEI4JPA
.

рдореИрдВ рдХреЗрд╡рд▓ рдПрдХ рдирдП рд╕реНрд▓рд╛рдЗрд╕ рдкреНрд░рдХрд╛рд░ рдХреЗ рд╕рдВрд╕реНрдХрд░рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕реЛрдЪрддрд╛ рд╣реВрдВ рдХреНрдпреЛрдВрдХрд┐ рддрдм рд╕реНрд▓рд╛рдЗрд╕рд┐рдВрдЧ рдкрд╛рд░реНрд╕рд░ рдореЗрдВ рдПрдХ рдСрдкрд░реЗрдЯрд░ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдФрд░ рдпрд╣ рдЕрдЪреНрдЫрд╛ рдХрд╛рдо рдХрд░реЗрдЧрд╛, рд╣рд╛рд▓рд╛рдВрдХрд┐ рдореИрдВ рдЙрд╕ рдХреНрд╖реЗрддреНрд░ рдореЗрдВ рд╕реБрдкрд░ рдЕрдиреБрднрд╡реА рдирд╣реАрдВ рд╣реВрдВ рдЗрд╕рд▓рд┐рдП рдЬреАрдбреАрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ рд╕реЗ рдПрдХ рд╣реЛрдирд╛ рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ рд╣реЛрдЧрд╛ рджреЗрд╡реЛрдВ рдХрд╛ рд╡рдЬрди рд╣реЛрддрд╛ рд╣реИред

рдЖрдк рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕рд╣реА рд╣реИрдВред рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХрд╛ рдкреБрди: рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рднреА рдмрд╣реБрдд рдЖрд╕рд╛рди рд╣реЛрдЧрд╛
рдмрд╛рдж рдореЗрдВ рдЕрдиреНрдп рдЪреАрдЬреЛрдВ рдХреЗ рд▓рд┐рдП рд╕рдВрд░рдЪрдирд╛ред рдореЗрд░реЗ рд▓рд┐рдП рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рд╡рд┐рдХрд▓реНрдк рд▓рдЧрддрд╛ рд╣реИред

рд╢рдирд┐рд╡рд╛рд░, 20 рдЬреБрд▓рд╛рдИ, 2019 рдХреЛ рд░рд╛рдд 11:28 рдмрдЬреЗ рдХреИрдорд░реВрди рд░реАрдЗрдХреНрд╕ рдиреЛрдЯрд┐рдлрд┐рдХреЗрд╢рди @github.com
рд▓рд┐рдЦрд╛ рдерд╛:

рдореИрдВ рдХреЗрд╡рд▓ рдПрдХ рдирдП рд╕реНрд▓рд╛рдЗрд╕ рдкреНрд░рдХрд╛рд░ рдХреЗ рд╕рдВрд╕реНрдХрд░рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕реЛрдЪрддрд╛ рд╣реВрдВ рдХреНрдпреЛрдВрдХрд┐ рддрдм рд╕реНрд▓рд╛рдЗрд╕рд┐рдВрдЧ
рдкрд╛рд░реНрд╕рд░ рдореЗрдВ рдПрдХ рдСрдкрд░реЗрдЯрд░ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдФрд░ рдпрд╣ рдЕрдЪреНрдЫрд╛ рдХрд╛рдо рдХрд░реЗрдЧрд╛

-
рдЖрдк рдЗрд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдХреНрдпреЛрдВрдХрд┐ рдЖрдкрдиреЗ рдЯрд┐рдкреНрдкрдгреА рдХреА рдереАред
рдЗрд╕ рдИрдореЗрд▓ рдХрд╛ рд╕реАрдзреЗ рдЙрддреНрддрд░ рджреЗрдВ, рдЗрд╕реЗ GitHub рдкрд░ рджреЗрдЦреЗрдВ
https://github.com/godotengine/godot/issues/4715?email_source=notifications&email_token=ACJUE6IMHLNTYTVL7DITY2TQAPQX3A5CNFSM4CEI4JPKYY3PNVWWWK3TUL52HS4DFVREXG43VMVBW63LNMVWHJJ
рдпрд╛ рдереНрд░реЗрдб рдХреЛ рдореНрдпреВрдЯ рдХрд░реЗрдВ
https://github.com/notifications/unsubscribe-auth/ACJUE6P5Q55EXAWD6IB4ARDQAPQX3ANCNFSM4CEI4JPA
.

рдореИрдВ рджреЗрдЦреВрдВрдЧрд╛ рдХрд┐ рдХреНрдпрд╛ рдореБрдЭреЗ рдЕрдкрдирд╛ рдкреБрд░рд╛рдирд╛ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдорд┐рд▓ рд╕рдХрддрд╛ рд╣реИ рдЬреЛ рдЕрднреА рднреА рдХрд╣реАрдВ рди рдХрд╣реАрдВ рдкрдбрд╝рд╛ рд╣реБрдЖ рд╣реИред рдпрд╣ 90% рд╕рдорд╛рдкреНрдд рд╣реЛ рдЧрдпрд╛ рдерд╛ рдФрд░ рдкрд╛рдЗрдерди рдХреА рддрд░рд╣ рдХрд╛рдо рдХрд░рддрд╛ рдерд╛, рдЗрд╕рдореЗрдВ рдПрдХ рдЯреБрдХрдбрд╝рд╛ рд╡рд╕реНрддреБ рд╣реИ рдЬрд┐рд╕реЗ рдЖрдк рд╕рд░рдгреА рдореЗрдВ рдЕрдиреБрдХреНрд░рдордгрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдЖрдк рдЧрд┐рд░рдлреНрддрд╛рд░реА [2:4] = [1,2,3] рдЬреИрд╕реА рд╕рд╛рдордЧреНрд░реА рднреА рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

рд╕рдордп рдХреА рдХрдореА рдХреЗ рдХрд╛рд░рдг рдореИрдВрдиреЗ рдЗрд╕ рдкрд░ рдХрд╛рдо рдХрд░рдирд╛ рдмрдВрдж рдХрд░ рджрд┐рдпрд╛

@brakhane рдпрд╣ рдмрд╣реБрдд рдорджрджрдЧрд╛рд░ рд╣реЛрдЧрд╛ред рдЕрднреА рдореИрдВ рдПрдХ рдирдпрд╛ рд╕реНрд▓рд╛рдЗрд╕ рдСрдмреНрдЬреЗрдХреНрдЯ рд╡реИрд░рд┐рдПрдВрдЯ рдкреНрд░рдХрд╛рд░ рдЬреЛрдбрд╝рдиреЗ рдХреА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдореЗрдВ рд╣реВрдВ рддрд╛рдХрд┐ рд╕реНрд▓рд╛рдЗрд╕рд┐рдВрдЧ рдХреЗ рдХрд╛рд░реНрдп рдХреЛ рдПрдХ рдСрдкрд░реЗрд╢рди рдорд╛рдирд╛ рдЬрд╛ рд╕рдХреЗ, рдЬрд┐рд╕рд╕реЗ рдкрд╛рд░реНрд╕рд░ рдХреЛ рд╕рдВрд╢реЛрдзрд┐рдд рдХрд░рдирд╛ рдмрд╣реБрдд рдЖрд╕рд╛рди рд╣реЛ рдЬрд╛рдПред

@creikey рдЬреЛ рдореЗрд░реЗ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХреЗ рд╕рдорд╛рди рд╣реА рд▓рдЧрддрд╛ рд╣реИред рдореИрдВрдиреЗ рдЕрдкрдирд╛ рдЧреЛрдбреЛрдЯ рдЧрд┐рдЯрд╣рдм рд░реЗрдкреЛ рд╣рдЯрд╛ рджрд┐рдпрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдореЗрд░реЗ рдкрд╛рд╕ рдХреЛрдб рдЕрднреА рднреА рдХрд╣реАрдВ рдФрд░ рдкрдбрд╝рд╛ рд╣реБрдЖ рд╣реЛ рд╕рдХрддрд╛ рд╣реИред рдореИрдВ рдПрдХ рдЕрдкрдбреЗрдЯ рдкреЛрд╕реНрдЯ рдХрд░реВрдВрдЧрд╛

@creikey рдореБрдЭреЗ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╣рд╛рд▓ рд╣реА рдореЗрдВ WIP рдирд╣реАрдВ рдорд┐рд▓рд╛ рд╣реИ (рдЗрд╕ рд╕рдВрд╕реНрдХрд░рдг рдореЗрдВ рдХреБрдЫ рд╕реБрд╡рд┐рдзрд╛рдПрдБ рдЧрд╛рдпрдм рд╣реЛ рд╕рдХрддреА рд╣реИрдВ)ред рдЖрдк рдЗрд╕реЗ рдпрд╣рд╛рдВ рдкрд╛ рд╕рдХрддреЗ рд╣реИрдВ: https://github.com/brakhane/godot/compare/4c4ab14..8a258c0

рдЕрднреА рднреА рдХреБрдЫ рдмрдЧ рд╣реИрдВ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдореИрдВрдиреЗ рдЕрднреА рдпрд╣рд╛рдВ https://github.com/brakhane/godot/compare/4c4ab14..8a258c0#diff -7d521a4f767fb1ae3c908a20616084a4R1446 рдкрд░ рдзреНрдпрд╛рди рджрд┐рдпрд╛ рд╣реИ, рдЗрд╕реЗ ".start" рдХреЗ рдмрдЬрд╛рдп ".end" рдХрд╣рдирд╛ рдЪрд╛рд╣рд┐рдПред

рдпрджрд┐ рдЖрдкрдХреЗ рдХреЛрдИ рдкреНрд░рд╢реНрди рд╣реИрдВ, рддреЛ рдореБрдЭреЗ рдЙрдирдХрд╛ рдЙрддреНрддрд░ рджреЗрдиреЗ рдореЗрдВ рдкреНрд░рд╕рдиреНрдирддрд╛ рд╣реЛ рд░рд╣реА рд╣реИред рдореИрдВ рдПрдХ рдФрд░ рд╣рд╛рд▓рд┐рдпрд╛ рд╕рдВрд╕реНрдХрд░рдг рдЦреЛрдЬрдиреЗ рдХрд╛ рднреА рдкреНрд░рдпрд╛рд╕ рдХрд░реВрдВрдЧрд╛ред

рдЕрдм рдореЗрд░реА рд░рд╛рдп рд╣реИ рдХрд┐ рдПрдХ рд╕рдорд╛рд╡реЗрд╢реА рдКрдкрд░реА рд╕реАрдорд╛ рдХреЗ рд╕рд╛рде рдХреЗрд╡рд▓ рдПрдХ рдлрд╝рдВрдХреНрд╢рди рдХреЗ рдмрдЬрд╛рдп рдкрд╛рдЗрдереЛрдирд┐рдХ рд╕рд░рдгреА рд╕реНрд▓рд╛рдЗрд╕рд┐рдВрдЧ рдЬреЛрдбрд╝рдиреЗ рд╕реЗ рдЕрдирд╛рд╡рд╢реНрдпрдХ рдЬрдЯрд┐рд▓рддрд╛ рдЬреБрдбрд╝ рд░рд╣реА рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдЗрд╕рдореЗрдВ рдХреЗрд╡рд▓ рдПрдХ рд╡рд┐рдзрд┐ рдЬреЛрдбрд╝рдиреЗ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдереЛрдбрд╝рд╛ рд▓рд╛рдн рдХреЗ рд╕рд╛рде рдПрдХ рдирдпрд╛ рд╕рдВрд╕реНрдХрд░рдг рдмрдирд╛рдирд╛ рд╣реЛрдЧрд╛ред

рдХреНрдпрд╛ рдпрд╣ рдкреГрд╖реНрда рдЙрдкрдпреЛрдЧреА рдерд╛?
0 / 5 - 0 рд░реЗрдЯрд┐рдВрдЧреНрд╕

рд╕рдВрдмрдВрдзрд┐рдд рдореБрджреНрджреЛрдВ

mefihl picture mefihl  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

blurymind picture blurymind  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

gonzo191 picture gonzo191  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

n-pigeon picture n-pigeon  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

mooseyfaith picture mooseyfaith  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ