UW2_PRC8/_module/nss/startingvisual.nss
Jaysyn904 5197ad9a4d Initial upload
Initial upload
2023-09-25 20:24:01 -04:00

59 lines
1.8 KiB
Plaintext

//Created by Guile 3/23/07
//Put this script OnEnter
void main()
{
object oPC = GetEnteringObject();
if (!GetIsPC(oPC)) return;
object oTarget;
oTarget = oPC;
//Visual effects can't be applied to waypoints, so if it is a WP
//the VFX will be applied to the WP's location instead
int nInt;
nInt = GetObjectType(oTarget);
effect eEffect;
eEffect = EffectVisualEffect(VFX_IMP_TORNADO);
if (nInt != OBJECT_TYPE_WAYPOINT)
DelayCommand(1.0, ApplyEffectToObject(DURATION_TYPE_INSTANT, eEffect, oTarget));
else
DelayCommand(1.1, ApplyEffectAtLocation(DURATION_TYPE_INSTANT, eEffect, GetLocation(oTarget)));
eEffect = EffectHeal(GetMaxHitPoints(oPC));
DelayCommand(1.3, ApplyEffectToObject(DURATION_TYPE_INSTANT, eEffect, oTarget));
eEffect = EffectHeal(GetMaxHitPoints(oPC));
DelayCommand(1.4, ApplyEffectToObject(DURATION_TYPE_INSTANT, eEffect, oTarget));
eEffect = EffectConcealment(50,MISS_CHANCE_TYPE_NORMAL);
DelayCommand(1.4, ApplyEffectToObject(DURATION_TYPE_TEMPORARY, eEffect, oTarget, 360.0f));
object oPlayer = oPC;
if(GetIsPC(oPC))
{
AssignCommand(oPlayer, ClearAllActions());
//Clear Reputation of PC
if (GetStandardFactionReputation(STANDARD_FACTION_COMMONER, oPlayer) <= 10)
{ SetLocalInt(oPlayer, "NW_G_Playerhasbeenbad", 10); // * Player bad
SetStandardFactionReputation(STANDARD_FACTION_COMMONER, 80, oPlayer);
}
if (GetStandardFactionReputation(STANDARD_FACTION_MERCHANT, oPlayer) <= 10)
{ SetLocalInt(oPlayer, "NW_G_Playerhasbeenbad", 10); // * Player bad
SetStandardFactionReputation(STANDARD_FACTION_MERCHANT, 80, oPlayer);
}
if (GetStandardFactionReputation(STANDARD_FACTION_DEFENDER, oPlayer) <= 10)
{ SetLocalInt(oPlayer, "NW_G_Playerhasbeenbad", 10); // * Player bad
SetStandardFactionReputation(STANDARD_FACTION_DEFENDER, 80, oPlayer);
}
}
}