Aschbourne_PRC8/_module/nss/mk_pre_scale.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

80 lines
2.1 KiB
Plaintext

#include "mk_inc_generic"
#include "mk_inc_states"
#include "mk_inc_craft"
#include "mk_inc_tools_s"
#include "mk_inc_ccoh_db"
#include "mk_inc_scale"
int StartingConditional()
{
object oPC = GetPCSpeaker();
object oTarget = MK_GetCurrentTarget(oPC);
MK_CCOH_DB_Init(oPC);
int nState = MK_GenericDialog_GetState();
int nAction = MK_GenericDialog_GetAction();
float fScaleFactor = MK_SCALE_GetScaleFactor(oTarget);
switch (nState)
{
case MK_STATE_SCALE:
switch (nAction)
{
case 249:
fScaleFactor=1.0;
break;
case 250:
fScaleFactor+=0.1;
break;
case 251:
fScaleFactor+=0.01;
break;
case 252:
fScaleFactor-=0.01;
break;
case 253:
fScaleFactor-=0.1;
break;
}
if (MK_SCALE_GetIsScaleFactorValid(fScaleFactor))
{
MK_SCALE_SetScaleFactor(oTarget, fScaleFactor);
}
break;
default:
nState = MK_STATE_SCALE;
MK_GenericDialog_SetState(nState);
CISetCurrentModMode(oPC, MK_CI_MODMODE_BODY);
MK_SetBodyPartToBeModified(oPC, MK_CRAFTBODY_SCALE, TRUE);
break;
}
switch (nState)
{
case MK_STATE_SCALE:
{
fScaleFactor = MK_SCALE_GetScaleFactor(oTarget);
// GetObjectVisualTransform(oTarget, OBJECT_VISUAL_TRANSFORM_SCALE);
MK_SCALE_DisplayScaleOption(250, -94, 14402, MK_SCALE_GetIsScaleFactorValid(fScaleFactor+0.1));
MK_SCALE_DisplayScaleOption(251, -95, 14403, MK_SCALE_GetIsScaleFactorValid(fScaleFactor+0.01));
MK_SCALE_DisplayScaleOption(252, -96, 14404, MK_SCALE_GetIsScaleFactorValid(fScaleFactor-0.01));
MK_SCALE_DisplayScaleOption(253, -97, 14405, MK_SCALE_GetIsScaleFactorValid(fScaleFactor-0.1));
MK_SCALE_DisplayScaleOption(249, -98, 14406, (fabs(fScaleFactor-1.0)>0.001) );
MK_GenericDialog_SetCondition(254, MK_CCOH_DB_GetIsBodyChanged(oTarget));
SetCustomToken(14423, MK_TrimString(FloatToString(fScaleFactor,10,2)));
break;
}
}
return TRUE;
}