58 lines
1.7 KiB
Plaintext
58 lines
1.7 KiB
Plaintext
|
//::///////////////////////////////////////////////
|
||
|
//:: OnUse: Toggle Activate
|
||
|
//:: x2_plc_used_act
|
||
|
//:: Copyright (c) 2003 Bioware Corp.
|
||
|
//:://////////////////////////////////////////////
|
||
|
/*
|
||
|
|
||
|
Simple script to toggle the placeable animation
|
||
|
state for placeables that support Activate and
|
||
|
DeActivate Animations
|
||
|
|
||
|
Placeables are best set to be DeActivated by
|
||
|
default with this script.
|
||
|
|
||
|
*/
|
||
|
//:://////////////////////////////////////////////
|
||
|
//:: Created By: Georg Zoeller
|
||
|
//:: Created On: 2003-09-10
|
||
|
//:://////////////////////////////////////////////
|
||
|
void main()
|
||
|
{
|
||
|
object oPC = GetLastUsedBy();
|
||
|
object oArea = GetArea(oPC);
|
||
|
int iTouched = GetLocalInt(OBJECT_SELF,"touched");
|
||
|
// * note that nActive == 1 does not necessarily mean the placeable is active
|
||
|
// * that depends on the initial state of the object
|
||
|
int nActive = GetLocalInt (OBJECT_SELF,"X2_L_PLC_ACTIVATED_STATE");
|
||
|
// * Play Appropriate Animation
|
||
|
if (!nActive)
|
||
|
{
|
||
|
ActionPlayAnimation(ANIMATION_PLACEABLE_ACTIVATE);
|
||
|
}
|
||
|
else
|
||
|
{
|
||
|
ActionPlayAnimation(ANIMATION_PLACEABLE_DEACTIVATE);
|
||
|
}
|
||
|
// * Store New State
|
||
|
SetLocalInt(OBJECT_SELF,"X2_L_PLC_ACTIVATED_STATE",!nActive);
|
||
|
|
||
|
if (iTouched == 1) {FloatingTextStringOnCreature("This seems to do nothing.",oPC); return;}
|
||
|
|
||
|
//ExploreAreaForPlayer(oArea,oPC);
|
||
|
|
||
|
SetLocalInt(OBJECT_SELF,"touched",1);
|
||
|
|
||
|
if (!GetIsPC(oPC)) return;
|
||
|
|
||
|
object oTarget;
|
||
|
oTarget = oPC;
|
||
|
|
||
|
effect eEffect;
|
||
|
eEffect = EffectDamageReduction(10, DAMAGE_POWER_PLUS_ONE);
|
||
|
FloatingTextStringOnCreature("The device creates a force field around you.",oPC);
|
||
|
eEffect = ExtraordinaryEffect(eEffect);
|
||
|
|
||
|
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, eEffect, oTarget, 360.0f);
|
||
|
}
|