Hide UID files in VSCode
This commit is contained in:
		
							
								
								
									
										5
									
								
								.vscode/settings.json
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										5
									
								
								.vscode/settings.json
									
									
									
									
										vendored
									
									
								
							@@ -2,5 +2,8 @@
 | 
			
		||||
	"godotTools.editorPath.godot4": "/var/lib/flatpak/app/org.godotengine.Godot/current/active/export/bin/org.godotengine.Godot",
 | 
			
		||||
	"terminal.integrated.tabs.enabled": false,
 | 
			
		||||
	"editor.insertSpaces": false,
 | 
			
		||||
	"editor.tabSize": 4
 | 
			
		||||
	"editor.tabSize": 4,
 | 
			
		||||
	"files.exclude": {
 | 
			
		||||
		"**/*.uid": true
 | 
			
		||||
	},
 | 
			
		||||
}
 | 
			
		||||
@@ -20,7 +20,6 @@ shader_parameter/npcTexture = ExtResource("3_20w6p")
 | 
			
		||||
 | 
			
		||||
[node name="TestNpc" type="CharacterBody3D"]
 | 
			
		||||
script = ExtResource("1_1muh7")
 | 
			
		||||
interactType = 1
 | 
			
		||||
interactCutscene = ExtResource("2_jwvuu")
 | 
			
		||||
 | 
			
		||||
[node name="CollisionShape3D" type="CollisionShape3D" parent="."]
 | 
			
		||||
 
 | 
			
		||||
@@ -29,6 +29,9 @@ transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.651853, 0.684572, -0.05930
 | 
			
		||||
 | 
			
		||||
[node name="TestNpc" parent="." instance=ExtResource("3_q0pj2")]
 | 
			
		||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -1.68747, 0.459578, -0.399262)
 | 
			
		||||
interactType = 2
 | 
			
		||||
interactTexts = Array[String](["Hello, I am an NPC"])
 | 
			
		||||
moveType = 1
 | 
			
		||||
direction = 1
 | 
			
		||||
 | 
			
		||||
[node name="OmniLight3D" type="OmniLight3D" parent="."]
 | 
			
		||||
 
 | 
			
		||||
@@ -1,14 +1,10 @@
 | 
			
		||||
class_name TestCutscene extends "res://scripts/Cutscene/Cutscene.gd"
 | 
			
		||||
const OverworldEntity = preload("res://scripts/Entities/OverworldEntity.gd");
 | 
			
		||||
const CookingStartEvent = preload("res://scripts/Cutscene/Cooking/CookingStartEvent.gd");
 | 
			
		||||
 | 
			
		||||
var cook:CookingGame;
 | 
			
		||||
class_name TestCutscene extends "res://scripts/Cutscene/Scene/OverworldConversationEvent.gd"
 | 
			
		||||
 | 
			
		||||
func _init(speaker:OverworldEntity, interacted:OverworldEntity ) -> void:
 | 
			
		||||
	cook = CookingGame.new(VerticalSlice.new());
 | 
			
		||||
	pass
 | 
			
		||||
 | 
			
		||||
func setupCutscene() -> void:
 | 
			
		||||
	add([
 | 
			
		||||
		CookingStartEvent.new(cook),
 | 
			
		||||
	]);
 | 
			
		||||
	super(
 | 
			
		||||
		speaker,
 | 
			
		||||
		interacted,
 | 
			
		||||
		[
 | 
			
		||||
			"Hello"
 | 
			
		||||
		]
 | 
			
		||||
	);
 | 
			
		||||
 
 | 
			
		||||
@@ -1,13 +1,27 @@
 | 
			
		||||
class_name BasicNPCEntity extends "res://scripts/Entities/OverworldEntity.gd"
 | 
			
		||||
const Cutscene = preload("res://scripts/Cutscene/Cutscene.gd")
 | 
			
		||||
const Cutscene = preload("res://scripts/Cutscene/Cutscene.gd");
 | 
			
		||||
const OverworldConversationEvent = preload("res://scripts/Cutscene/Scene/OverworldConversationEvent.gd");
 | 
			
		||||
 | 
			
		||||
enum BasicNPCInteractType {
 | 
			
		||||
	NONE,
 | 
			
		||||
	CUTSCENE
 | 
			
		||||
	CUTSCENE,
 | 
			
		||||
	TEXTS
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
enum BasicNPCMoveType {
 | 
			
		||||
	STILL,
 | 
			
		||||
	RANDOM_LOOK
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
@export var interactType:BasicNPCInteractType = BasicNPCInteractType.NONE;
 | 
			
		||||
@export var interactCutscene:Resource;
 | 
			
		||||
@export var interactCutscene:GDScript;
 | 
			
		||||
@export var interactTexts:Array[String];
 | 
			
		||||
 | 
			
		||||
@export var moveType:BasicNPCMoveType = BasicNPCMoveType.STILL;
 | 
			
		||||
 | 
			
		||||
@export var randomLookMinTime:float = 1.0;
 | 
			
		||||
@export var randomLookMaxTime:float = 3.0;
 | 
			
		||||
var randomLookTimer:float = 0.0;
 | 
			
		||||
 | 
			
		||||
func interact(interactor:OverworldEntity) -> void:
 | 
			
		||||
	if interactType == BasicNPCInteractType.NONE:
 | 
			
		||||
@@ -16,11 +30,26 @@ func interact(interactor:OverworldEntity) -> void:
 | 
			
		||||
	if interactType == BasicNPCInteractType.CUTSCENE:
 | 
			
		||||
		# Cutscene in this manner must take two entities
 | 
			
		||||
		# (self, speaker, and interactor, player)
 | 
			
		||||
		var instance:Cutscene = interactCutscene.new(self, interactor);
 | 
			
		||||
		getSystems().CUTSCENE.setCurrentCutscene(instance);
 | 
			
		||||
		var cs:Cutscene = interactCutscene.new(self, interactor);
 | 
			
		||||
		getSystems().CUTSCENE.setCurrentCutscene(cs);
 | 
			
		||||
		return
 | 
			
		||||
 | 
			
		||||
	if interactType == BasicNPCInteractType.TEXTS:
 | 
			
		||||
		var cs:Cutscene = OverworldConversationEvent.new(self, interactor, interactTexts);
 | 
			
		||||
		getSystems().CUTSCENE.setCurrentCutscene(cs);
 | 
			
		||||
		return
 | 
			
		||||
 | 
			
		||||
	pass
 | 
			
		||||
 | 
			
		||||
func updateMovement(delta:float) -> void:
 | 
			
		||||
	if moveType == BasicNPCMoveType.STILL:
 | 
			
		||||
		return
 | 
			
		||||
 | 
			
		||||
	if moveType == BasicNPCMoveType.RANDOM_LOOK:
 | 
			
		||||
		randomLookTimer -= delta;
 | 
			
		||||
		if randomLookTimer <= 0:
 | 
			
		||||
			randomLookTimer = randf_range(randomLookMinTime, randomLookMaxTime);
 | 
			
		||||
			self.direction = randi_range(0, 3);
 | 
			
		||||
		return
 | 
			
		||||
	
 | 
			
		||||
	pass
 | 
			
		||||
 
 | 
			
		||||
@@ -7,11 +7,9 @@ func _ready() -> void:
 | 
			
		||||
func _on_body_entered(body: Node3D) -> void:
 | 
			
		||||
	if (!body is OverworldEntity):
 | 
			
		||||
		return
 | 
			
		||||
	print("Entered overworld ent")
 | 
			
		||||
	(body as OverworldEntity).withinMapBounds = self;
 | 
			
		||||
 | 
			
		||||
func _on_body_exited(body: Node3D) -> void:
 | 
			
		||||
	if (!body is OverworldEntity):
 | 
			
		||||
		return
 | 
			
		||||
	print("Entered overworld ent")
 | 
			
		||||
	(body as OverworldEntity).withinMapBounds = null;
 | 
			
		||||
 
 | 
			
		||||
@@ -20,6 +20,7 @@ var isClosed = true;
 | 
			
		||||
 | 
			
		||||
func _ready() -> void:
 | 
			
		||||
	label = $MarginContainer/Label
 | 
			
		||||
	self.visible = false;
 | 
			
		||||
 | 
			
		||||
func _process(delta: float) -> void:
 | 
			
		||||
	if text == "":
 | 
			
		||||
@@ -39,9 +40,9 @@ func _process(delta: float) -> void:
 | 
			
		||||
 | 
			
		||||
	if visibleCharacters >= getCountOfCharactersToScrollInView():
 | 
			
		||||
		currentViewScrolled = true;
 | 
			
		||||
		print("Scrolled view");
 | 
			
		||||
		if isMoreViews:
 | 
			
		||||
			print("More views");
 | 
			
		||||
		#print("Scrolled view");
 | 
			
		||||
		#if isMoreViews:
 | 
			
		||||
			#print("More views");
 | 
			
		||||
		return;
 | 
			
		||||
 | 
			
		||||
	if Input.is_action_just_pressed("interact"):
 | 
			
		||||
@@ -108,7 +109,7 @@ func setText(text:String) -> void:
 | 
			
		||||
	self.text = text;
 | 
			
		||||
	if text == "":
 | 
			
		||||
		isClosed = true;
 | 
			
		||||
		label.text = "closed.";
 | 
			
		||||
		self.visible = false;
 | 
			
		||||
		return;
 | 
			
		||||
 | 
			
		||||
	isClosed = false;
 | 
			
		||||
@@ -117,3 +118,4 @@ func setText(text:String) -> void:
 | 
			
		||||
	currentLine = 0;
 | 
			
		||||
	currentViewScrolled = false;
 | 
			
		||||
	recalculateWrapping();
 | 
			
		||||
	self.visible = true;
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user