Aschbourne_PRC8/_module/nss/skinnable_corpse.nss
GetOffMyYarn 7030eb2235 added things
added a crafting tool merchant,
added a training hall (not quite working yet)
fixed crafting issues,
exchanged the small cave area
2024-09-01 14:11:15 -04:00

263 lines
8.5 KiB
Plaintext

//::///////////////////////////////////////////////
//:: Default:On Death
//:: NW_C2_DEFAULT7
//:: Copyright (c) 2001 Bioware Corp.
//:://////////////////////////////////////////////
/*
Shouts to allies that they have been killed
*/
//:://////////////////////////////////////////////
//:: Created By: Preston Watamaniuk
//:: Created On: Oct 25, 2001
//:://////////////////////////////////////////////
#include "NW_I0_GENERIC"
object CreatePlaceable(string sObject, location lPlace, float fDuration);
void main()
{
ExecuteScript("sf_xp", OBJECT_SELF);
SetIsDestroyable(FALSE,FALSE,FALSE);
DelayCommand(120.0,SetIsDestroyable(TRUE,FALSE,FALSE));
DelayCommand(121.0,DestroyObject(OBJECT_SELF));
object oTemp = CreatePlaceable("corpse",GetLocation(OBJECT_SELF),120.0);
string sResSelf = GetResRef(OBJECT_SELF);
if (sResSelf == "wooly_razorback")
{
SetLocalString(oTemp,"sPelt","item_wool");
SetLocalString(oTemp,"sMeat","meat029");
SetLocalObject(oTemp,"oCorpse",OBJECT_SELF);
}
if (sResSelf == "deer002")
{
SetLocalString(oTemp,"sPelt","pelt023");
SetLocalString(oTemp,"sMeat","meat023");
SetLocalObject(oTemp,"oCorpse",OBJECT_SELF);
}
if (sResSelf == "beardireboss001")
{
SetLocalString(oTemp,"sPelt","pelt006");
SetLocalString(oTemp,"sMeat","meat006");
SetLocalObject(oTemp,"oCorpse",OBJECT_SELF);
SetLocalInt(oTemp,"iPenalty",700);
}
if (sResSelf == "bearblck001")
{
SetLocalString(oTemp,"sPelt","pelt002");
SetLocalString(oTemp,"sMeat","meat002");
SetLocalObject(oTemp,"oCorpse",OBJECT_SELF);
SetLocalInt(oTemp,"iPenalty",200);
}
if (sResSelf == "bearblck002")
{
SetLocalString(oTemp,"sPelt","pelt002");
SetLocalString(oTemp,"sMeat","meat002");
SetLocalObject(oTemp,"oCorpse",OBJECT_SELF);
SetLocalInt(oTemp,"iPenalty",200);
}
if (sResSelf == "bearbrwn001")
{
SetLocalString(oTemp,"sPelt","pelt001");
SetLocalString(oTemp,"sMeat","meat001");
SetLocalObject(oTemp,"oCorpse",OBJECT_SELF);
SetLocalInt(oTemp,"iPenalty",300);
}
if (sResSelf == "beardire001")
{
SetLocalString(oTemp,"sPelt","pelt005");
SetLocalString(oTemp,"sMeat","meat005");
SetLocalObject(oTemp,"oCorpse",OBJECT_SELF);
SetLocalInt(oTemp,"iPenalty",600);
}
if (sResSelf == "bearkodiak001")
{
SetLocalString(oTemp,"sPelt","pelt003");
SetLocalString(oTemp,"sMeat","meat003");
SetLocalObject(oTemp,"oCorpse",OBJECT_SELF);
SetLocalInt(oTemp,"iPenalty",500);
}
if (sResSelf == "bearpolar001")
{
SetLocalString(oTemp,"sPelt","pelt004");
SetLocalString(oTemp,"sMeat","meat004");
SetLocalObject(oTemp,"oCorpse",OBJECT_SELF);
SetLocalInt(oTemp,"iPenalty",550);
}
if (sResSelf == "wolfwint001")
{
SetLocalString(oTemp,"sPelt","pelt011");
SetLocalString(oTemp,"sMeat","meat011");
SetLocalObject(oTemp,"oCorpse",OBJECT_SELF);
SetLocalInt(oTemp,"iPenalty",350);
}
if (sResSelf == "dog002")
{
SetLocalString(oTemp,"sPelt","pelt007");
SetLocalString(oTemp,"sMeat","meat007");
SetLocalObject(oTemp,"oCorpse",OBJECT_SELF);
}
if (sResSelf == "direwolf001")
{
SetLocalString(oTemp,"sPelt","pelt010");
SetLocalString(oTemp,"sMeat","meat010");
SetLocalObject(oTemp,"oCorpse",OBJECT_SELF);
SetLocalInt(oTemp,"iPenalty",500);
}
if (sResSelf == "wolf001")
{
SetLocalString(oTemp,"sPelt","pelt008");
SetLocalString(oTemp,"sMeat","meat008");
SetLocalObject(oTemp,"oCorpse",OBJECT_SELF);
SetLocalInt(oTemp,"iPenalty",50);
}
if (sResSelf == "wolf002")
{
SetLocalString(oTemp,"sPelt","pelt008");
SetLocalString(oTemp,"sMeat","meat008");
SetLocalObject(oTemp,"oCorpse",OBJECT_SELF);
SetLocalInt(oTemp,"iPenalty",50);
}
if (sResSelf == "direwolf002")
{
SetLocalString(oTemp,"sPelt","pelt010");
SetLocalString(oTemp,"sMeat","meat010");
SetLocalObject(oTemp,"oCorpse",OBJECT_SELF);
SetLocalInt(oTemp,"iPenalty",500);
}
if (sResSelf == "worg001")
{
SetLocalString(oTemp,"sPelt","pelt009");
SetLocalString(oTemp,"sMeat","meat009");
SetLocalObject(oTemp,"oCorpse",OBJECT_SELF);
SetLocalInt(oTemp,"iPenalty",150);
}
if (sResSelf == "cat001")
{
SetLocalString(oTemp,"sPelt","pelt017");
SetLocalString(oTemp,"sMeat","meat017");
SetLocalObject(oTemp,"oCorpse",OBJECT_SELF);
SetLocalInt(oTemp,"iPenalty",70);
}
if (sResSelf == "beastmalar002")
{
SetLocalString(oTemp,"sPelt","pelt015");
SetLocalString(oTemp,"sMeat","meat015");
SetLocalObject(oTemp,"oCorpse",OBJECT_SELF);
SetLocalInt(oTemp,"iPenalty",650);
}
if (sResSelf == "cougar001")
{
SetLocalString(oTemp,"sPelt","pelt012");
SetLocalString(oTemp,"sMeat","meat012");
SetLocalObject(oTemp,"oCorpse",OBJECT_SELF);
SetLocalInt(oTemp,"iPenalty",150);
}
if (sResSelf == "cragcat001")
{
SetLocalString(oTemp,"sPelt","pelt013");
SetLocalString(oTemp,"sMeat","meat013");
SetLocalObject(oTemp,"oCorpse",OBJECT_SELF);
SetLocalInt(oTemp,"iPenalty",250);
}
if (sResSelf == "panther001")
{
SetLocalString(oTemp,"sPelt","pelt014");
SetLocalString(oTemp,"sMeat","meat014");
SetLocalObject(oTemp,"oCorpse",OBJECT_SELF);
SetLocalInt(oTemp,"iPenalty",300);
}
if (sResSelf == "lion001")
{
SetLocalString(oTemp,"sPelt","pelt016");
SetLocalString(oTemp,"sMeat","meat016");
SetLocalObject(oTemp,"oCorpse",OBJECT_SELF);
SetLocalInt(oTemp,"iPenalty",400);
}
if (sResSelf == "jaguar001")
{
SetLocalString(oTemp,"sPelt","pelt018");
SetLocalString(oTemp,"sMeat","meat018");
SetLocalObject(oTemp,"oCorpse",OBJECT_SELF);
SetLocalInt(oTemp,"iPenalty",300);
}
if (sResSelf == "diretiger001")
{
SetLocalString(oTemp,"sPelt","pelt019");
SetLocalString(oTemp,"sMeat","meat019");
SetLocalObject(oTemp,"oCorpse",OBJECT_SELF);
SetLocalInt(oTemp,"iPenalty",650);
}
if (sResSelf == "badger001")
{
SetLocalString(oTemp,"sPelt","pelt020");
SetLocalString(oTemp,"sMeat","meat020");
SetLocalObject(oTemp,"oCorpse",OBJECT_SELF);
}
if (sResSelf == "bat002")
{
SetLocalString(oTemp,"sPelt","pelt021");
SetLocalString(oTemp,"sMeat","meat021");
SetLocalObject(oTemp,"oCorpse",OBJECT_SELF);
}
if (sResSelf == "cow002")
{
SetLocalString(oTemp,"sPelt","pelt022");
SetLocalString(oTemp,"sMeat","meat022");
SetLocalObject(oTemp,"oCorpse",OBJECT_SELF);
SetLocalInt(oTemp,"iPenalty",20);
}
if (sResSelf == "direbadg001")
{
SetLocalString(oTemp,"sPelt","pelt024");
SetLocalString(oTemp,"sMeat","meat024");
SetLocalObject(oTemp,"oCorpse",OBJECT_SELF);
SetLocalInt(oTemp,"iPenalty",200);
}
if (sResSelf == "ratdire002")
{
SetLocalString(oTemp,"sPelt","pelt025");
SetLocalString(oTemp,"sMeat","meat025");
SetLocalObject(oTemp,"oCorpse",OBJECT_SELF);
SetLocalInt(oTemp,"iPenalty",150);
}
if (sResSelf == "ox002")
{
SetLocalString(oTemp,"sPelt","pelt027");
SetLocalString(oTemp,"sMeat","meat027");
SetLocalObject(oTemp,"oCorpse",OBJECT_SELF);
SetLocalInt(oTemp,"iPenalty",75);
}
if (sResSelf == "deerstag002")
{
SetLocalString(oTemp,"sPelt","pelt028");
SetLocalString(oTemp,"sMeat","meat028");
SetLocalObject(oTemp,"oCorpse",OBJECT_SELF);
SetLocalInt(oTemp,"iPenalty",300);
}
if (sResSelf == "rat002")
{
SetLocalString(oTemp,"sPelt","pelt026");
SetLocalString(oTemp,"sMeat","meat026");
SetLocalObject(oTemp,"oCorpse",OBJECT_SELF);
}
SpeakString("NW_I_AM_DEAD", TALKVOLUME_SILENT_TALK);
//Shout Attack my target, only works with the On Spawn In setup
SpeakString("NW_ATTACK_MY_TARGET", TALKVOLUME_SILENT_TALK);
if(GetSpawnInCondition(NW_FLAG_DEATH_EVENT))
{
SignalEvent(GetAreaFromLocation(GetLocation(OBJECT_SELF)), EventUserDefined(1007));
}
}
object CreatePlaceable(string sObject, location lPlace, float fDuration)
{
object oPlaceable = CreateObject(OBJECT_TYPE_PLACEABLE,sObject,lPlace,FALSE);
if (fDuration != 0.0)
DestroyObject(oPlaceable,fDuration);
return oPlaceable;
}