Aschbourne_PRC8/_module/nss/deity_racestart.nss

54 lines
1.3 KiB
Plaintext
Raw Normal View History

2024-06-14 10:48:20 -04:00
#include "prc_inc_racial"
void main()
{
object oPC = GetPCSpeaker();
object oSpawn = GetObjectByTag("Default_Start"); //set default respawn point
int iRace = MyPRCGetRacialType(oPC);
int iSubrace = GetRacialType(oPC);
if (iRace == RACIAL_TYPE_DWARF)
{
oSpawn = GetObjectByTag("Dwarf_Start");
}
if ((iRace == RACIAL_TYPE_ELF) && (!(iSubrace == RACIAL_TYPE_DROW_MALE || iSubrace == RACIAL_TYPE_DROW_FEMALE)))
{
oSpawn=GetObjectByTag("Elf_Start");
}
if (iRace == RACIAL_TYPE_GNOME)
{
oSpawn=GetObjectByTag("Gnome_Start");
}
if (iRace == RACIAL_TYPE_HALFELF && iSubrace != RACIAL_TYPE_HALFDROW)
{
oSpawn=GetObjectByTag("HalfElf_Start");
}
if (iRace == RACIAL_TYPE_HALFDROW && GetAlignmentGoodEvil(oPC) != ALIGNMENT_EVIL)
{
oSpawn=GetObjectByTag("HalfElf_Start");
}
else
{
oSpawn=GetObjectByTag("Drow_Start");
}
if (iRace == RACIAL_TYPE_HALFLING)
{
oSpawn=GetObjectByTag("Halfling_Start");
}
if (iRace==RACIAL_TYPE_HALFORC)
{
oSpawn=GetObjectByTag("HalfOrc_Start");
}
if (iRace == RACIAL_TYPE_HUMAN)
{
oSpawn=GetObjectByTag("Human_Start");
}
if ((iRace == RACIAL_TYPE_ELF) && (iSubrace == RACIAL_TYPE_DROW_MALE || iSubrace == RACIAL_TYPE_DROW_FEMALE))
{
oSpawn=GetObjectByTag("Drow_Start");
}
AssignCommand(oPC, DelayCommand(1.0, JumpToObject(oSpawn)));
}