32 lines
1.3 KiB
Plaintext
32 lines
1.3 KiB
Plaintext
/// /// /// /// /// /// /// /// /// /// /// ///
|
|
/// wg_used
|
|
/// OnUsed script for witchgrass placeable.
|
|
/// If player has a torch equipped, he will burn the plant.
|
|
///
|
|
/// Created by Gilgon Avalrock
|
|
/// /// /// /// /// /// /// /// /// /// /// ///
|
|
#include "lib_witchgrass"
|
|
void main(){
|
|
object oPlayer = GetLastUsedBy();
|
|
object oMainHand = GetItemInSlot( INVENTORY_SLOT_RIGHTHAND, oPlayer );
|
|
int nMHType = GetBaseItemType( oMainHand );
|
|
object oOffHand =GetItemInSlot( INVENTORY_SLOT_LEFTHAND, oPlayer );
|
|
int nOHType = GetBaseItemType( oOffHand );
|
|
//if player has a torch equiped, burn plant
|
|
if( ( nMHType == BASE_ITEM_TORCH ) || ( nOHType == BASE_ITEM_TORCH ) ) {
|
|
//fire and smoke...
|
|
SetOnFire( OBJECT_SELF );
|
|
GenerateSmoke(OBJECT_SELF);
|
|
object oSmoke = CreateObject(OBJECT_TYPE_PLACEABLE,"plc_dustplume", GetLocation(OBJECT_SELF));
|
|
DestroyObject(oSmoke,6.f);
|
|
int i=1;
|
|
//get every creature within 10 feet high.
|
|
object oCreature = GetNearestObject( OBJECT_TYPE_CREATURE, OBJECT_SELF, i );
|
|
while( oCreature != OBJECT_INVALID && GetDistanceToObject( oCreature ) <= 10.f ) {
|
|
GetHigh(oCreature);
|
|
i++;
|
|
oCreature = GetNearestObject( OBJECT_TYPE_CREATURE, OBJECT_SELF, i );
|
|
}
|
|
}
|
|
}
|