Browse Source

Changed the rotations in loading screen and ingame. First implementation for rolly tolly toy.

master
mathias 4 years ago
parent
commit
ba8689916b
  1. 18
      BodyParts/BodyBase/BodyBase.gd
  2. 1
      BodyParts/BodyBase/BodyBase.tscn
  3. 5
      Controllers/GameStateController.gd
  4. 2
      project.godot

18
BodyParts/BodyBase/BodyBase.gd

@ -1,14 +1,20 @@
extends Spatial
extends RigidBody
class_name BodyBase
export(int) var player_id
var ingame : bool = false
var ground : Spatial
var current_angle : float
# Called when the node enters the scene tree for the first time.
func _ready():
pass # Replace with function body.
func on_ingame():
ground = get_parent().get_node("Arena").get_node("ground")
ingame = true
# Called every frame. 'delta' is the elapsed time since the previous frame.
#func _process(delta):
# pass
func _process(delta):
if ingame:
current_angle = translation.angle_to(ground.translation)
print(current_angle)

1
BodyParts/BodyBase/BodyBase.tscn

@ -11,6 +11,7 @@ height = 1.48749
[node name="Torso" type="RigidBody" groups=[
"Player",
]]
transform = Transform( 1, 0, 0, 0, -1.62921e-07, -1, 0, 1, -1.62921e-07, 0, 0, 0 )
script = ExtResource( 1 )
[node name="TorsoCollider" type="CollisionShape" parent="."]

5
Controllers/GameStateController.gd

@ -61,7 +61,7 @@ func _switch_to_fighting(torso):
torso.global_transform.origin = Vector3.ZERO
torso.translation += Vector3(0, 4, 0)
torso.rotation = Vector3.ZERO
torso.rotation = Vector3(90, 0, 0)
_body_count += 1
if _body_count < InGameState.player_count:
@ -75,7 +75,10 @@ func _switch_to_fighting(torso):
for body in _bodies:
_fighting_scene.add_child(body)
body.on_ingame()
_fighting_scene.add_child(torso)
torso.on_ingame()
func _switch_to_body_build():

2
project.godot

@ -9,7 +9,7 @@
config_version=4
_global_script_classes=[ {
"base": "Spatial",
"base": "RigidBody",
"class": "BodyBase",
"language": "GDScript",
"path": "res://BodyParts/BodyBase/BodyBase.gd"

Loading…
Cancel
Save