Initial commit. Updated release archive.
This commit is contained in:
76
_module/nss/as_seasick.nss
Normal file
76
_module/nss/as_seasick.nss
Normal file
@@ -0,0 +1,76 @@
|
||||
void main()
|
||||
{
|
||||
|
||||
|
||||
object oObject = GetFirstObjectInShape(SHAPE_SPHERE, 9.0, GetLocation(OBJECT_SELF),OBJECT_TYPE_CREATURE);
|
||||
do {
|
||||
|
||||
if (d12()<3)
|
||||
{
|
||||
int iFallingDC = 16;
|
||||
int iPCFortSave;
|
||||
string sSaveResult;
|
||||
|
||||
iPCFortSave = FortitudeSave(oObject, iFallingDC);
|
||||
|
||||
switch(iPCFortSave)
|
||||
{
|
||||
case 0:
|
||||
{
|
||||
sSaveResult = "FAILURE";
|
||||
break;
|
||||
}
|
||||
case 1:
|
||||
{
|
||||
sSaveResult = "SUCCESS";
|
||||
break;
|
||||
}
|
||||
case 2:
|
||||
{
|
||||
sSaveResult = "IMMUNE";
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
if (sSaveResult == "FAILURE")
|
||||
{
|
||||
effect ePuke = EffectVisualEffect(VFX_COM_CHUNK_YELLOW_SMALL);
|
||||
effect eSeasick = EffectKnockdown();
|
||||
string sPukeTalk = "BBBLLLLAAAARRRRGGGGHHHHH!!!!";
|
||||
string sPukeApology = "I don't think I'm going to make it to port...";
|
||||
|
||||
AssignCommand(oObject, ClearAllActions());
|
||||
AssignCommand(oObject, ActionPlayAnimation(ANIMATION_LOOPING_PAUSE_DRUNK,1.0,1.5));
|
||||
AssignCommand(oObject, ActionSpeakString(sPukeTalk));
|
||||
AssignCommand(oObject, PlayVoiceChat(VOICE_CHAT_PAIN3,oObject));
|
||||
DelayCommand(1.75, ApplyEffectToObject(DURATION_TYPE_TEMPORARY, ePuke, oObject, 1.0));
|
||||
AssignCommand(oObject, DelayCommand(1.85, PlaySound("as_cv_gutterspl1")));
|
||||
DelayCommand(2.5, ApplyEffectToObject(DURATION_TYPE_TEMPORARY, eSeasick, oObject, 5.0));
|
||||
AssignCommand(oObject, DelayCommand(5.0, ActionSpeakString(sPukeApology)));
|
||||
}
|
||||
|
||||
if (sSaveResult == "SUCCESS")
|
||||
{
|
||||
string sPukeTalk = "Ugh - this tub rolls like a dire boar in dragon dung!";
|
||||
string sPukeApology = "I hope I can keep my lunch down";
|
||||
AssignCommand(oObject, ActionPlayAnimation(ANIMATION_LOOPING_PAUSE_DRUNK,1.0,2.5));
|
||||
AssignCommand(oObject, ActionSpeakString(sPukeTalk));
|
||||
AssignCommand(oObject, DelayCommand(6.0, ActionSpeakString(sPukeApology)));
|
||||
}
|
||||
|
||||
if (sSaveResult == "IMMUNE")
|
||||
{
|
||||
string sPukeTalk = "Yo-ho, yo-ho, de dum de dum de da";
|
||||
string sPukeApology = "Ah, there's nothing like a good sea voyage!";
|
||||
|
||||
AssignCommand(oObject, ClearAllActions());
|
||||
AssignCommand(oObject, ActionPlayAnimation(ANIMATION_FIREFORGET_VICTORY3,1.0,1.5));
|
||||
AssignCommand(oObject, ActionSpeakString(sPukeTalk));
|
||||
AssignCommand(oObject, DelayCommand(5.0, ActionSpeakString(sPukeApology)));
|
||||
}
|
||||
}
|
||||
else return;
|
||||
|
||||
} while ((oObject = GetNextObjectInShape(SHAPE_SPHERE, 9.0, GetLocation(OBJECT_SELF),OBJECT_TYPE_CREATURE)) != OBJECT_INVALID);
|
||||
}
|
||||
|
Reference in New Issue
Block a user