quest, convo, mob, and spawn fixes

This commit is contained in:
EpicValor
2023-10-14 19:57:58 -05:00
parent 25b518454d
commit 9c4d6c7eb2
140 changed files with 28623 additions and 11985 deletions

View File

@@ -15,11 +15,11 @@ void main()
object oPC=GetEnteringObject();
object oIntensity=GetNearestObjectByTag("FB1_INTENSITY",oPC);
object oArea=GetArea(oPC);
int nIntensity=3;
int nIntensity=0;
if (oIntensity!=OBJECT_INVALID)
nIntensity=StringToInt(GetName(oIntensity));
SetLocalInt(oPC,"FB1_Intensity",nIntensity);
if (nIntensity<1) nIntensity=1;
if (nIntensity<1) nIntensity=0;
if(GetIsDM(oPC)) return;
@@ -45,7 +45,7 @@ void fnHeatEffects(object oPC,object oArea)
nTotalIntensity=GetLocalInt(oPC,"FB1_Intensity");
oItem=GetItemInSlot(INVENTORY_SLOT_CHEST,oPC);
sTag=GetTag(oItem);
if (GetIsNight()==TRUE) nTotalIntensity=nTotalIntensity+10;
if (GetIsNight()==TRUE) nTotalIntensity=nTotalIntensity+0;
if (GetWeather(oArea)==WEATHER_SNOW) nTotalIntensity=nTotalIntensity-3;
if (GetWeather(oArea)==WEATHER_RAIN) nTotalIntensity=nTotalIntensity+3;
if (oItem!=OBJECT_INVALID)
@@ -57,7 +57,7 @@ void fnHeatEffects(object oPC,object oArea)
} // check clothing
else
{ // no clothes
nTotalIntensity=nTotalIntensity+20;
nTotalIntensity=nTotalIntensity+0;
} // no clothes
oItem=GetItemInSlot(INVENTORY_SLOT_CLOAK,oPC);
sTag=GetTag(oItem);

View File

@@ -16,11 +16,11 @@ void main()
if(GetIsDM(oPC))return;
object oIntensity=GetNearestObjectByTag("DH2_INTENSITY",oPC);
object oArea=GetArea(oPC);
int nIntensity=30;
int nIntensity=600;
if (oIntensity!=OBJECT_INVALID)
nIntensity=StringToInt(GetName(oIntensity));
SetLocalInt(oPC,"DH2_Intensity",nIntensity);
if (nIntensity<5) nIntensity=15;
if (nIntensity<5) nIntensity=600;
if (GetIsNight()==TRUE&&GetWaypointByTag("DH2_DAYNIGHT")!=OBJECT_INVALID) nIntensity=nIntensity*2;
if (GetIsPC(oPC)==TRUE)
{ // is PC
@@ -35,9 +35,9 @@ void main()
void fnHeatEffects(object oPC,object oArea)
{
int nHeat;
effect eCon=EffectAbilityDecrease(ABILITY_CONSTITUTION,1);
effect eMov=EffectMovementSpeedDecrease(20);
effect eStr=EffectAbilityDecrease(ABILITY_STRENGTH,1);
effect eCon=EffectAbilityDecrease(ABILITY_CONSTITUTION,0);
effect eMov=EffectMovementSpeedDecrease(0);
effect eStr=EffectAbilityDecrease(ABILITY_STRENGTH,0);
effect eLight=EffectVisualEffect(VFX_IMP_DAZED_S);
effect eFull=EffectVisualEffect(VFX_IMP_SLOW);
effect eDmg=EffectDamage(1);
@@ -59,9 +59,9 @@ void fnHeatEffects(object oPC,object oArea)
else if (nHeat>4)
{ // suffer heat problems
SendMessageToPC(oPC,"You are suffering from thirst");
ApplyEffectToObject(DURATION_TYPE_TEMPORARY,eCon,oPC,140.0);
ApplyEffectToObject(DURATION_TYPE_TEMPORARY,eMov,oPC,130.0);
ApplyEffectToObject(DURATION_TYPE_TEMPORARY,eStr,oPC,120.0);
ApplyEffectToObject(DURATION_TYPE_TEMPORARY,eCon,oPC,14.0);
ApplyEffectToObject(DURATION_TYPE_TEMPORARY,eMov,oPC,13.0);
ApplyEffectToObject(DURATION_TYPE_TEMPORARY,eStr,oPC,12.0);
ApplyEffectToObject(DURATION_TYPE_INSTANT,eFull,oPC,5.0);
ApplyEffectToObject(DURATION_TYPE_INSTANT,eDmg,oPC,1.0);
} // suffer heat problems

View File

@@ -17,8 +17,8 @@ void main()
{
//Behaviour config
AddBehaviour( "+HEALSELF", 100 ); //heal self
AddBehaviour( "+REGROUP", 40 ); //regroup
AddBehaviour( "+FLANK", 20 ); //flank
AddBehaviour( "+REGROUP", 20 ); //regroup
AddBehaviour( "+FLANK", 30 ); //flank
//AddBehaviour( "+AVOIDMELEE", 20 ); //avoid melee
AddBehaviour( "+EVACAOE", 50 ); //evac AOEs
//AddBehaviour( "+SUMMON", 60 ); //summon spells
@@ -28,8 +28,8 @@ void main()
AddBehaviour( "+DEFSELF", 20 ); //defend self
AddBehaviour( "+GROUPENHANCE", 20 ); //enhance group
AddBehaviour( "+ENHANCESING", 20 ); //enhance single
AddBehaviour( "+ENHANCESELF", 20 ); //enhance self
AddBehaviour( "+FEATENHANCE", 20 ); //enhance self via feats
AddBehaviour( "+ENHANCESELF", 40 ); //enhance self
AddBehaviour( "+FEATENHANCE", 40 ); //enhance self via feats
AddBehaviour( "+DISPEL", 20 ); //dispel single
AddBehaviour( "+DISPELAOE", 20 ); //dispel AOEs
//AddBehaviour( "+DISMISSAL", 40 ); //dismiss summons
@@ -66,13 +66,13 @@ void main()
//SetReadyStatus();
//set fastbuffer status, should always be left on
SetIsFastBuffer( TRUE );
SetIsFastBuffer( TRUE );
//SetLocalInt( OBJECT_SELF, "#FASTBUFFER", 1 );
//SetLocalInt( OBJECT_SELF, "#ACTIVE", 1 );
//log starting location
ExecuteScript( "no_scr_logspnloc", OBJECT_SELF );
DelayCommand(2.0, ExecuteScript( "random_drop", OBJECT_SELF ));
//log loaded melee weapons
ExecuteScript( "no_scr_logeq", OBJECT_SELF );

View File

@@ -16,7 +16,7 @@
void main()
{
//Behaviour config
AddBehaviour( "+AVOIDMELEE", 50 ); //avoid melee
AddBehaviour( "+AVOIDMELEE", 10 ); //avoid melee
AddBehaviour( "+EVACAOE", 80 ); //evac AOEs
AddBehaviour( "+HEALSELF", 100 ); //heal self
AddBehaviour( "+REGROUP", 20 ); //regroup
@@ -25,10 +25,10 @@ void main()
AddBehaviour( "+VIS", 50 ); //vision
AddBehaviour( "+DEFSELF", 10 ); //defend self
AddBehaviour( "+DEFSING", 5 ); //defend single
AddBehaviour( "+ENHANCESELF", 10 ); //enhance self
AddBehaviour( "+GROUPENHANCE", 5 ); //enhance group
AddBehaviour( "+ENHANCESING", 5 ); //enhance single
AddBehaviour( "+FEATENHANCE", 10 ); //enhance self via feats
AddBehaviour( "+ENHANCESELF", 40 ); //enhance self
AddBehaviour( "+GROUPENHANCE", 15 ); //enhance group
AddBehaviour( "+ENHANCESING", 15 ); //enhance single
AddBehaviour( "+FEATENHANCE", 15 ); //enhance self via feats
AddBehaviour( "+DISPEL", 10 ); //dispel single
AddBehaviour( "+DISPELAOE", 10 ); //dispel AOEs
AddBehaviour( "+DISMISSAL", 10 ); //dismiss summons