extends MeshInstance3D
var is_rotating = false
var is_rotating2 = false
var is_rotating3 = false
var is_rotating4 = false
var speed = 11 # Adjust the speed as needed
var delta = 0.009
var delta2 = 0.009
var delta3 = 0.009
var delta4 = 0.0002
var delta5 = 0.0002
var delta6 = 0.09
var delta7 = 0.09
func _input(event):
if event is InputEventMouseButton:
if event.pressed and event.button_index == 1:
is_rotating = true
else:
is_rotating = false
if event.pressed and event.button_index == 2:
is_rotating2 = true
else:
is_rotating2 = false
if event.pressed and event.button_index == 3:
is_rotating3 = true
else:
is_rotating3 = false
if event.button_index == 3 and not event.pressed:
is_rotating4 = true
else:
is_rotating4 = false
if event.pressed and event.is_action("mouse_rueda_arriba"):
rotate_x(-0.04)
translate(Vector3( 0, -speed * delta6,0)) # Move forward
#translate(Vector3(0, 0, speed * delta)) # Move forward
if event.pressed and event.is_action("mouse_rueda_avajo"):
rotate_x(0.04)
translate(Vector3( 0, speed * delta7,0)) # Move forward
#translate(Vector3( 0, 0,-speed * delta)) # Move forward
if event is InputEventKey:
#if event.pressed and event.scancode == KEY_P:
if event.pressed and event.is_action("GRUADIRECCIONDERECHA-I-"):
translate(Vector3(-speed * delta, 0, 0)) # Move forward
if event.pressed and event.is_action("GRUADIRECCIONIZQUIERDA-U-"):
translate(Vector3(speed * delta2, 0, 0)) # Move forward
if event.pressed and event.is_action("GRUADIRECCIONALANTE-J-"):
translate(Vector3( 0, 0, speed * delta)) # Move forward
if event.pressed and event.is_action("GRUADIRECCIONATRAS-K-"):
translate(Vector3( 0, 0, -speed * delta)) # Move forward
if event.pressed and event.is_action("GRUADIRECCIONARRIBA-O-"):
translate(Vector3( 0, speed * delta5,0)) # Move forward
if event.pressed and event.is_action("GRUADIRECCIONABAJO-P-"):
translate(Vector3( 0, -speed * delta5,0)) # Move forward
if event.pressed and event.is_action("OOPARAINCLINACIONIZQUIERDA"):
rotate_z(0.04)
if event.pressed and event.is_action("PPPARAINCLINACIONDERECHA"):
rotate_z(-0.04)
func _process(delta: float) -> void:
if is_rotating:
rotate_y(0.009)
if is_rotating2:
rotate_y(-0.009)
if is_rotating3:
rotate_x(-0.0009)
if is_rotating4:
rotate_x(0.0009)
-------------------------------------------------------------------------------------------------------------------------
EXPLICACION:
MOVER NIÑO -"W"-"A"-"S"-"D" --- "BOTON DEL RATON IZQUIERDO"-¡¡NIÑO MUERDE!! Y GIRA IZQUIERDA CAMARA ,"BOTON DERECHO"¡¡NIÑO MUERDE!! Y GIRA DERECHA CAMARA ,
"RUEDA DEL RATON" HACERCA ALEJA CAMARA.
MOVER LA CAMARA -"U"-"I"-"J"-"K"-
INCLINACION DE CAMARA-"O"-"P"
El script hace todos estos movimientos para mover un MeshInstance3D que contiene una camara, excepto los del texto de color azul que funcionan en otro script que mueve un CharacterBody3D este mueve al player y el player contiene el MeshInstance3D que contiene una camara,
CharacterBody3D es el padre y este un hijo el MeshInstance3D que contiene una camara,