40 lines
1.4 KiB
GDScript
40 lines
1.4 KiB
GDScript
extends NPC
|
|
|
|
const loveTomeItemClass = preload("res://Items/Paper/LoveTome.gd")
|
|
var loveTome
|
|
|
|
const stickItemClass = preload("res://Items/Plants/Stick.gd")
|
|
const birchStickItemClass = preload("res://Items/Plants/BirchStick.gd")
|
|
const magicStickItemClass = preload("res://Items/Plants/MagicStick.gd")
|
|
|
|
var rng = RandomNumberGenerator.new()
|
|
|
|
func _ready():
|
|
dialogueResource = load("res://NPCs/Beavers/LongingBeaver/LongingBeaver.dialogue")
|
|
loveTome = loveTomeItemClass.new()
|
|
|
|
GlobalEvents.itemBurnt.connect(important_item_burnt)
|
|
|
|
func important_item_burnt(item:Item):
|
|
if item.get_name(false) == "Love Novel" or item.get_name(false) == "Love Tome":
|
|
MessageManager.addMessage("AAAAAAAAAAAAA", self, "Lammy", Color.YELLOW)
|
|
|
|
func take_tome():
|
|
InventoryManager.spend_item(loveTome)
|
|
|
|
func give_sticks():
|
|
var result = rng.randi_range(0, 100)
|
|
if result <= 45:
|
|
InventoryManager.add_item_to_inventory(stickItemClass.new(), 5)
|
|
MessageManager.item_popup(stickItemClass.new())
|
|
elif result <= 82:
|
|
InventoryManager.add_item_to_inventory(birchStickItemClass.new(), 4)
|
|
MessageManager.item_popup(birchStickItemClass.new())
|
|
else:
|
|
InventoryManager.add_item_to_inventory(magicStickItemClass.new(), 1)
|
|
MessageManager.item_popup(magicStickItemClass.new())
|
|
AchievementManager.complete_achievement("75 WCing Beaver")
|
|
|
|
func tome_check():
|
|
return InventoryManager.check_if_in_inventory(loveTome)
|