AOC_PRC8/_module/nss/onpercept_light.nss
Jaysyn904 5e558169a0 Initial Commit
Initial Commit
2025-04-03 11:24:16 -04:00

154 lines
6.5 KiB
Plaintext

#include "onpercept_dark"
void PercieveLight(object oPC)
{
object oMod = GetModule();
object oTeam2;
int iDice;
int iDice2;
int iRate;
int iStatus;
int iTCount=0;
float oDelay1 = 0.2; // First Animation after first line
float oDelay2 = 4.0; // PC reaction speach
float oDelay3 = 10.0; // NPC Attack cry speech
float oDelay4 = 2.0; // All NPCs face PC
float oDelay5 = 14.0; // Team war cries
float oDelay6 = 18.0; // Team attacks
int iModCount;
int iFireFlag;
object oPC2 = GetFirstPC();
iRate = GetLocalInt(oPC, "pc_HWswing");
iStatus = GetLocalInt(oMod, "war_won");
//FloatingTextStringOnCreature(GetName(oPC), oPC2);
//FloatingTextStringOnCreature(IntToString(iStatus), oPC2);
//FloatingTextStringOnCreature(IntToString(iRate), oPC2);
// Set flag to indicate that allies have turned on the PC
SetLocalInt(oMod, "turn_flag", 1);
oTeam2 = GetFirstFactionMember(OBJECT_SELF, FALSE);
while (GetIsObjectValid(oTeam2))
{
if (!GetIsDead(oTeam2))
{
++iTCount;
}
oTeam2 = GetNextFactionMember(OBJECT_SELF, FALSE);
}
iDice = d8();
switch (iDice)
{
case 1: {SpeakString("Where is your honour? You join us but you don't fight!!!");}break;
case 2: {SpeakString("Idle hands are lucifer's tools!");}break;
case 3: {SpeakString("You have dishonoured yourself!!!");}break;
case 4: {SpeakString("Join those Dark fools next time! Don't waste our time!!");}break;
case 5: {SpeakString("You must be punished for your herecy!");}break;
case 6: {SpeakString("Death comes to ye who saves only yourself!!");}break;
case 7: {SpeakString("What wretched soul would abandon us like that?");}break;
case 8: {SpeakString("You have betrayed the fellowship of light!");}break;
}
if ((GetResRef(OBJECT_SELF)!="beli2")&& (GetResRef(OBJECT_SELF)!="dragon2")&&
(GetResRef(OBJECT_SELF)!="boss002")&&(GetResRef(OBJECT_SELF)!="hdrag2"))
{
DelayCommand(oDelay1, AssignCommand(OBJECT_SELF, ActionPlayAnimation
(ANIMATION_LOOPING_TALK_FORCEFUL, 1.0f, 5.0f)));
}
else
{
DelayCommand(oDelay1, AssignCommand(OBJECT_SELF, ActionPlayAnimation
(ANIMATION_FIREFORGET_TAUNT)));
}
iDice = d8();
switch (iDice)
{
case 1: {DelayCommand(oDelay2, AssignCommand(oPC, ActionSpeakString("You are guys of light right?....you know, forgiveness and all that?.......?!")));}break;
case 2: {DelayCommand(oDelay2, AssignCommand(oPC, ActionSpeakString("*Gulp*")));}break;
case 3: {DelayCommand(oDelay2, AssignCommand(oPC, ActionSpeakString("Holy crap!!!")));}break;
case 4: {DelayCommand(oDelay2, AssignCommand(oPC, ActionSpeakString("I will repent....just listen to my prayers....please....?")));}break;
case 5: {DelayCommand(oDelay2, AssignCommand(oPC, ActionSpeakString("um...can I offer you some gold perhaps....?!")));}break;
case 6: {DelayCommand(oDelay2, AssignCommand(oPC, ActionSpeakString("ah...my...um...mobile phone rang?...It was my mother.....mummy? *Gulp*")));}break;
case 7: {DelayCommand(oDelay2, AssignCommand(oPC, ActionSpeakString("aww c'mon guys.....let me off will ya?")));}break;
case 8: {DelayCommand(oDelay2, AssignCommand(oPC, ActionSpeakString("Well you never answered my prayers anyway!!!!")));}break;
}
oDelay2+=0.2;
DelayCommand(oDelay2, AssignCommand(oPC, ActionPlayAnimation
(ANIMATION_LOOPING_TALK_PLEADING, 1.0f, 5.0f)));
if (iTCount>1)
{
iDice = d10();
switch (iDice)
{
case 1: {DelayCommand(oDelay3, SpeakString("Attaaaaack the heretic!"));
;}break;
case 2: {DelayCommand(oDelay3, SpeakString("Kill the imposter!"));
;}break;
case 3: {DelayCommand(oDelay3, SpeakString("Stop the heretic!"));
;}break;
case 4: {DelayCommand(oDelay3, SpeakString("EEExcercise the Deeeeemons!"));
;}break;
case 5: {DelayCommand(oDelay3, SpeakString("In the name of the father...I kill you!"));
;}break;
case 6: {DelayCommand(oDelay3, SpeakString("You must be put to death for your blasphemy!"));
;}break;
case 7: {DelayCommand(oDelay3, SpeakString("Too late for prayers now, heretic!"));
;}break;
case 8: {DelayCommand(oDelay3, SpeakString("We will wash away your sins...with your blood!!!"));
;}break;
case 9: {DelayCommand(oDelay3, SpeakString("Don't let the heretic escape!"));
;}break;
case 10: {DelayCommand(oDelay3, SpeakString("Quick, the heretic is heading for the terminator!!!"));
;}break;
}
}
else
{
iDice = d10();
switch (iDice)
{
case 1: {DelayCommand(oDelay3, SpeakString("I will now cleanse your black soul!"));
;}break;
case 2: {DelayCommand(oDelay3, SpeakString("Time to meet my boss upstairs!"));
;}break;
case 3: {DelayCommand(oDelay3, SpeakString("Now you must die!"));
;}break;
case 4: {DelayCommand(oDelay3, SpeakString("I will now deliver your penance!"));
;}break;
case 5: {DelayCommand(oDelay3, SpeakString("I now absolve you....of your life!!!"));
;}break;
case 6: {DelayCommand(oDelay3, SpeakString("Your blood must be spilled!"));
;}break;
case 7: {DelayCommand(oDelay3, SpeakString("This battlefield shall be desicrated with your blood!"));
;}break;
case 8: {DelayCommand(oDelay3, SpeakString("For your sin you must die!"));
;}break;
case 9: {DelayCommand(oDelay3, SpeakString("I shall destroy the sinner, Father! *looks up to the heavens"));
;}break;
case 10: {DelayCommand(oDelay3, SpeakString("You must be relieved of your tainted soul!!!"));
;}break;
}
}
DelayCommand(oDelay4, AllFacePC(oPC));
DelayCommand(oDelay5, TeamSpeak());
DelayCommand(oDelay6, AttackPlayer(oPC));
}
//void main() {}