Aschbourne_PRC8/_module/nss/vamp_coffintoken.nss
GetOffMyYarn 69879d6957 Areas and Fixes
Added CCOH and missing areas
Changed some areas to be craftable,
Fixed some on death issues,
Fixed the Gaurd
2024-08-30 11:38:44 -04:00

48 lines
2.2 KiB
Plaintext

// Creates coffin to target.
void coffin_token(object oPC, location lLocation)
{
// Visual effect
effect eVis = EffectVisualEffect(VFX_FNF_SUMMON_MONSTER_1);
ApplyEffectAtLocation(DURATION_TYPE_INSTANT, eVis, lLocation,0.0f);
//Creates unique coffin. Name is creaters cd-key
string sTest = GetPCPublicCDKey(oPC);
PrintString("vamp_coffintoken: CDKey to use as a coffin tag is " + sTest);
if (sTest != "")
{
PrintString("vamp_coffintoken: Creating Coffin.");
// Create coffin
CreateObject(OBJECT_TYPE_PLACEABLE,"VampireCoffin",lLocation,FALSE,sTest);//GetPCPublicCDKey(oPC));
// This is later used in on exit to find and destroy this coffin.
SetCampaignString("Vampire","PubCDkey",GetPCPublicCDKey(oPC),oPC);
// note that they no longer have a coffin in their inventory
SetLocalInt(oPC,"iCoffinInInventory",FALSE);
/****** DEBUG CODE ************/
object oTestCoffin = GetObjectByTag(sTest);
PrintString("vamp_coffintoken: Coffin's tag is literally " + GetTag(oTestCoffin));
PrintString("vamp_coffintoken: Created coffin using the key "+GetPCPublicCDKey(oPC)+" for "+GetName(oPC));
/****** END DEBUG CODE ************/
SendMessageToPC(oPC,"You place your coffin down. Be sure to pick it up before you log off, or it could be destroyed.");
}
// If cdkey is "" --> Single Player game. Create normal coffin.
else
{
// This is later used in on exit to find and destroy this coffin.
SetCampaignString("Vampire","PubCDkey",GetPCPublicCDKey(oPC),oPC);
// note that they no longer have a coffin in their inventory
SetLocalInt(oPC,"iCoffinInInventory",FALSE);
PrintString("vamp_coffintoken: Created SINGLE PLAYER Coffin.");
CreateObject(OBJECT_TYPE_PLACEABLE,"VampireCoffin",lLocation,FALSE);
SendMessageToPC(oPC,"You place your coffin down. Be sure to pick it up before you log off, or it could be destroyed.");
}
// Set respawn location.
SetCampaignLocation("Vampire", "VampCoffinLocation", lLocation, oPC);
// Destroy token.
DestroyObject(GetItemPossessedBy(oPC, "VampireCoffinToken"));
}