119 lines
8.5 KiB
GDScript
119 lines
8.5 KiB
GDScript
extends SceneBase
|
|
|
|
func _init():
|
|
sceneID = "PetsTalkScene"
|
|
|
|
func _run():
|
|
|
|
if(state == ""):
|
|
saynn("In front of you - three slaves belonging to Issix.")
|
|
addCharacter("azazel")
|
|
addCharacter("lamia")
|
|
addCharacter("hiisi")
|
|
addButton("Azazel", "Approach Azazel", "azazelmain")
|
|
addButton("Hiisi", "Approach Hiisi", "hiisimain")
|
|
addButton("Lamia", "Approach Lamia", "lamiamain")
|
|
addButton("Leave", "Be on your way", "endthescene")
|
|
|
|
if(state == "azazelmain"):
|
|
playAnimation(StageScene.Duo, "kneel", {pc="azazel", npc="pc", bodyState={naked=false, hard=false}})
|
|
clearCharacter()
|
|
addCharacter("azazel")
|
|
addButton("Talk", "Talk to Azazel", "azazeltalk")
|
|
addButton("Appearance", "Look at Azazel", "azazelappearance")
|
|
if(GM.pc.getInventory().hasItemID("CatnipPlant")):
|
|
saynn("Before you even have the time to approach Azazel, you see his head hovering over his body, his little nose working very hard to track down the source of the curious smell. He looks around with interest, until he sees you approaching.\nHe observes you with interest as you come close.")
|
|
saynn("[say=azazel]Meow! You really smell of a catnip, do you have catnip? Do you??[/say]")
|
|
saynn("{azazel.name} becomes really excited, as exemplified by his tail stretching high as if it was a broom stick. His body constantly sways.")
|
|
addButton("Give Catnip", "Give Azazel the catnip", "catnip")
|
|
else:
|
|
if getModuleFlag("IssixModule", "PC_Enslavement_Status", 0) == 0:
|
|
saynn("You approach Azazel, he recognizes sudden attention given to him, he goes on his fours doing some kitty back streching before kneeling towards you expectandly. You notice he took a quick peek at his master beforehand.")
|
|
else:
|
|
pass # TODO
|
|
addButton("Back", "Take a step back", "")
|
|
|
|
if(state == "lamiamain"):
|
|
if getModuleFlag("IssixModule", "PC_Enslavement_Status", 0) == 0:
|
|
saynn("You approach Lamia")
|
|
addButton("Try drawing", "You can try and draw something with lamia", "lamiadraw") # TODO
|
|
else:
|
|
pass # TODO
|
|
saynn("")
|
|
|
|
if(state == "catnip"):
|
|
saynn("You take the catnip and slowly reach your paw with the plant to the feline. Halfway there feline snatches the catnip from you paw and throws it in the air. His paws go above and he plays airborne valley...catnip with it? Eventually he misses with his paw and catnip falls on his muzzle, he freezes for a moment as if paralyzed, the pupils in his eyes become large.")
|
|
saynn("[say=pc]Umm, Azazel, are you okey?[/say]")
|
|
sayn("He turns his face towards you again, enlarged pupils still in his eyes, surprised face expression staring at you.")
|
|
saynn("After a moment his pupils go back to normal, and his face expression turns content.")
|
|
saynn("[say=azazel]Meow! I mean... Yes, sorry, I got... A bit carried away.[/say]")
|
|
saynn("He becomes a little embarassed. Looks down at the catnip plant on his blanket. Picks it up with his paw and consumes it.")
|
|
saynn("[say=azazel]Twank yuu {pc.name}. It was really nice![/say]")
|
|
processTime(1 * 60)
|
|
addButton("Back", "End catnip therapy session", "azazelmain")
|
|
#setState("azazelmain")
|
|
|
|
if(state == "azazeltalk"):
|
|
GM.main.setModuleFlag("IssixModule", "Azazel_Catnip_talked", true)
|
|
var affection = getModuleFlag("IssixModule", "Azazel_Affection_given")
|
|
addButton("Prison", "Ask how did he end up in prison?", "azazelprison")
|
|
addButton("Hobby", "Ash what hobbies does he have", "azazelhobby")
|
|
if affection > 2:
|
|
addButton("Issix", "Ask what he thinks of his master?", "azazelmaster")
|
|
else:
|
|
addDisabledButton("Issix", "You don't have good enough relationship with Azazel to ask about his master")
|
|
if affection > 5:
|
|
addButton("Breeder", "Ask what he thinks of his position as a breeding bitch?", "azazelbreeding")
|
|
else:
|
|
addDisabledButton("Breeder", "You don't have good enough relationship with Azazel to ask about his position as breeding bitch")
|
|
if affection > 10:
|
|
addButton("Fetishes", "He mentioned his fetishes, perhaps he could elaborate?", "azazelfetishes")
|
|
else:
|
|
addDisabledButton("Breeder", "You don't have good enough relationship with Azazel to ask about his fetishes")
|
|
if affection > 18:
|
|
addButton("Pussy", "Azazel has a pussy and yet he is rather masculine", "azazelintersex")
|
|
else:
|
|
addDisabledButton("Pussy", "You don't have good enough relationship with Azazel to ask about his genitalia")
|
|
#addButton("Hero", "")
|
|
if(GM.pc.getInventory().hasItemID("CatnipPlant")):
|
|
pass
|
|
else:
|
|
pass
|
|
addButton("Back", "Do something else", "azazelmain")
|
|
|
|
if(state == "azazelappearance"):
|
|
if(OPTIONS.isContentEnabled(ContentType.Watersports)):
|
|
saynn("When approaching there are two distinct smells coming from Azazel - his own pheromones advertising his fertility to everyone around, as well another strong smell of his master. Azazel has been marked, in more ways than one.")
|
|
else:
|
|
saynn("When approaching there is one distinct smell coming from Azazel - his own pheromones advertising his fertility to everyone around.")
|
|
saynn("You take a closer look at {azazel.name}. He is a very thin and fairly short feline, judging from him sitting he is around " + Util.cmToString(150) + " tall, with no visible muscles, likely not very strong. Overall his body is still mostly masculine, though here and there there are feminine features like his face or shoulders.\nHis fur is in majority dark grey, though his belly and face are of ligher shade of gray. A small set of horns protrudes from his head. On his backside there is a medium sized feline tail.\n\nOne significant detail is that he does not possess a penis, in its place there is a {azazel.pussyStretch} vagina, above which you can see a womb tattoo seemingly glowing a bit in shade of red.")
|
|
saynn("On his back words ”ISSIX'S PROPERTY” branded onto the skin - a mark of his master.")
|
|
addButton("Back", "Do something else", "azazelmain")
|
|
|
|
if state == "azazelprison":
|
|
saynn("[say=pc]Tell me Azazel, what had happened that you've ended up in this prison? You are a Lilac, so I assume it had something to do with sex.[/say]")
|
|
saynn("[say=azazel]It's true... There is a group on my home planet, they claim they want to cleanse the society of trash, and by trash they of course mean everyone they deem too radical for their own liking.[/say]")
|
|
saynn("Azazel looks down, this conversation seems to bring back bad memories.")
|
|
saynn("[say=azazel]One of the group's members wanted to meet me one day, they wanted to... Procure my services. Turns out it was all just a plot, they got close to me and I didn't really see anything wrong with that, I shared a lot of personal details with them - my life, financial situation even fetishes, they felt really honest and... Caring. Eventually they tore down their mask and said they have all kind of dirt on me. That's where the hell broke loose, their group were on my back for a while, stalking, harassing me. Eventually one of my clients gave me the bug, I think it was the group who sent me that client and...[/say]")
|
|
saynn("Azazel's voice starts to break down.")
|
|
saynn("[say=azazel]They reported me, I had my license taken and now I'm in here.[/say]")
|
|
saynn("You both sit in awkward silence while Azazel recovers.")
|
|
saynn("[say=azazel]I will never understand groups as that one. There are more of those all over the galaxy, I know that. They ruin the lives of so many of us.. Workers. What have we done to wrong them? Nothing, we just sell our time and bodies to give others and ourselves some temporary pleasures in this grim world we live in.[/say]")
|
|
saynn("He sighs, it seems to have calmed him down")
|
|
saynn("[say=azazel]When I first arrived here I were so lost. Still very confused by this series of events, felt betrayed, hurt. Eventually I've met Master, they saw something in me and theey guided me through my trauma. I were really happy to become his pet, I've finally understood what it really means to care for someone. And honestly? It's not so bad, I have food, shelter and Master who takes care of me. And my heats.[/say]")
|
|
saynn("He says the last one, showing you his tongue at you in a grin")
|
|
saynn("[say=azazel]So... Yeah... That's how I ended up here. Not a happy story, but I doubt anyone's is. Ironically, I think I'm better here, and I can still engage in sex without any stupid license.[/say]")
|
|
addButton("Back", "Do something else", "azazelmain")
|
|
|
|
func _react(_action: String, _args):
|
|
if(_action == "catnip"):
|
|
GM.pc.getInventory().removeXOfOrDestroy("CatnipPlant", 1)
|
|
GM.main.getCharacter("azazel").addLust(10)
|
|
GM.main.increaseModuleFlag("IssixModule", "Azazel_Affection_given")
|
|
|
|
if(_action == "endthescene"):
|
|
endScene()
|
|
return
|
|
|
|
setState(_action)
|