mirror of
				https://github.com/mightypanders/GMTKJam2021.git
				synced 2025-11-04 02:59:50 +01:00 
			
		
		
		
	add guest
This commit is contained in:
		
							
								
								
									
										51
									
								
								Guest.gd
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										51
									
								
								Guest.gd
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,51 @@
 | 
				
			|||||||
 | 
					extends KinematicBody2D
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					onready var pickUpArea = $PickUpArea
 | 
				
			||||||
 | 
					export var guestName = "Dieter"
 | 
				
			||||||
 | 
					export var  PICKUPTRESHOLD = 5
 | 
				
			||||||
 | 
					export var destinationColor = Color.yellow
 | 
				
			||||||
 | 
					signal picked_up(color,name)
 | 
				
			||||||
 | 
					signal dropped_off_success 
 | 
				
			||||||
 | 
					signal dropped_off_idle
 | 
				
			||||||
 | 
					signal dropped_off_fail
 | 
				
			||||||
 | 
					var rng = RandomNumberGenerator.new()
 | 
				
			||||||
 | 
					onready var sprite = $Sprite
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					var colorList = [
 | 
				
			||||||
 | 
						Color.yellow,
 | 
				
			||||||
 | 
						Color.violet,
 | 
				
			||||||
 | 
						Color.red,
 | 
				
			||||||
 | 
						Color.turquoise,
 | 
				
			||||||
 | 
						Color.orange
 | 
				
			||||||
 | 
					]
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Called when the node enters the scene tree for the first time.
 | 
				
			||||||
 | 
					func _ready():	
 | 
				
			||||||
 | 
						rng.randomize()
 | 
				
			||||||
 | 
						var n = rng.randi_range(0,4)
 | 
				
			||||||
 | 
						print(n)
 | 
				
			||||||
 | 
						destinationColor = colorList[n]
 | 
				
			||||||
 | 
						print(destinationColor)
 | 
				
			||||||
 | 
						sprite.modulate = destinationColor
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						pass # Replace with function body.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					func _on_PickUpArea_body_entered(body):
 | 
				
			||||||
 | 
						if body.name =="PLAYER":
 | 
				
			||||||
 | 
							if body.velocity.x >= PICKUPTRESHOLD or body.velocity.y >= PICKUPTRESHOLD:
 | 
				
			||||||
 | 
								emit_signal("picked_up",destinationColor,guestName)
 | 
				
			||||||
 | 
								# start pickup process
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
							# we are being picked up by the player
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						pass
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					func _on_PickUpArea_area_entered(area):
 | 
				
			||||||
 | 
						if area.name == "DROPOFF":
 | 
				
			||||||
 | 
							if area.destinationColor == destinationColor:
 | 
				
			||||||
 | 
								emit_signal("dropped_off_success")
 | 
				
			||||||
 | 
							else: 
 | 
				
			||||||
 | 
								emit_signal("dropped_off_fail")
 | 
				
			||||||
 | 
						
 | 
				
			||||||
							
								
								
									
										28
									
								
								Guest.tscn
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										28
									
								
								Guest.tscn
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,28 @@
 | 
				
			|||||||
 | 
					[gd_scene load_steps=5 format=2]
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[ext_resource path="res://assets/placeholder_white.png" type="Texture" id=1]
 | 
				
			||||||
 | 
					[ext_resource path="res://Guest.gd" type="Script" id=2]
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[sub_resource type="CapsuleShape2D" id=2]
 | 
				
			||||||
 | 
					radius = 6.04475
 | 
				
			||||||
 | 
					height = 3.32129
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[sub_resource type="CircleShape2D" id=1]
 | 
				
			||||||
 | 
					radius = 24.5545
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[node name="Guest" type="KinematicBody2D"]
 | 
				
			||||||
 | 
					script = ExtResource( 2 )
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[node name="Sprite" type="Sprite" parent="."]
 | 
				
			||||||
 | 
					texture = ExtResource( 1 )
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[node name="CollisionShape2D" type="CollisionShape2D" parent="."]
 | 
				
			||||||
 | 
					shape = SubResource( 2 )
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[node name="PickUpArea" type="Area2D" parent="."]
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[node name="CollisionShape2D" type="CollisionShape2D" parent="PickUpArea"]
 | 
				
			||||||
 | 
					shape = SubResource( 1 )
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[connection signal="area_entered" from="PickUpArea" to="." method="_on_PickUpArea_area_entered"]
 | 
				
			||||||
 | 
					[connection signal="body_entered" from="PickUpArea" to="." method="_on_PickUpArea_body_entered"]
 | 
				
			||||||
		Reference in New Issue
	
	Block a user