![]() |
Attention | Topic was automatically imported from the old Question2Answer platform. |
![]() |
Asked By | Ahlyia |
Im trying to make a sort of 3rd person thing and i want the y axis of the camera to be stationary so only the x and z can move, but im having a weird error.
extends Camera3D
func _ready():
pass # Replace with function body.
func _process(delta):
self.global_position = Vector3(self.global_position.x, clamp(self.global_position.y, 0, 0.605), self.global_position.z)
btw the error is
Invalid get index ‘global_position’ (on base: ‘Camera3D ()’)
Hmmm… I don’t see anything obviously wrong there. Is that the complete error? It looks a little strange to me. For example, if I intentionally put a typo in the global_position
property name to generate a similar error (because the actual property works fine here), I get the following error:
Invalid set index 'global_positionz' (on base: 'Camera3D') with value of type 'Vector3'.
While it’s similar to your error, I’d expect it to match exactly - unless you haven’t pasted the compete error?
Really, grasping at straws here as the code looks OK to me on the surface…
jgodfrey | 2023-01-19 03:09
Ah, wait. I see the error difference. I broke the set
side of the expression. In your case, it’s the get
side. So, my replicated error looks like this now (again, with an intentionally broken property name)
Invalid get index 'global_positionz' (on base: 'Camera3D').
jgodfrey | 2023-01-19 03:13
Just set up a test scene to verify. That code works perfectly fine here (using Godot 4, beta 12).
jgodfrey | 2023-01-19 03:19
hmm, thats odd, im using Godot 4, Alpha 9 right now.
Ahlyia | 2023-01-19 11:58
I found out why, i was using 4.0 version 9 and for some reason it only works on version 12
Ahlyia | 2023-01-19 12:03