void CreateFire(object oTemp); void main() { object oPC = OBJECT_SELF; object oTemp; //location lSelf = GetLocation(oPC); vector vSelf = GetPosition(oPC); object oArea = GetArea(oPC); vector vFire; //int vDirection; float fSelf; float fDistance; location lFire; fSelf = GetFacing(oPC)+Random(360); fDistance = 0.4; vFire = vSelf + (AngleToVector(fSelf) * fDistance); lFire = Location(oArea,vFire,fSelf); oTemp=CreateObject(OBJECT_TYPE_PLACEABLE,"temporaryplaceho",lFire,FALSE); AssignCommand(oPC,SetFacingPoint(GetPosition(oTemp))); AssignCommand(oPC,ActionPlayAnimation(ANIMATION_LOOPING_GET_LOW,1.0,4.5)); DelayCommand(5.0,FloatingTextStringOnCreature("You carefully strike the flint to spark a small fire from the tinder..",oPC,FALSE)); AssignCommand(oTemp,PlaySound("as_na_grassmove2")); AssignCommand(oTemp,DelayCommand(1.0,PlaySound("as_na_twigsnap2"))); AssignCommand(oTemp,DelayCommand(2.0,PlaySound("as_na_twigsnap1"))); AssignCommand(oTemp,DelayCommand(3.0,PlaySound("as_na_branchsnp2"))); AssignCommand(oTemp,DelayCommand(4.0,PlaySound("as_na_branchsnp2"))); DelayCommand(0.8,ApplyEffectToObject(DURATION_TYPE_TEMPORARY,EffectVisualEffect(VFX_COM_SPARKS_PARRY,FALSE),oTemp,1.0)); DelayCommand(1.0,ApplyEffectToObject(DURATION_TYPE_TEMPORARY,EffectVisualEffect(VFX_COM_SPARKS_PARRY,FALSE),oTemp,1.0)); DelayCommand(2.0,ApplyEffectToObject(DURATION_TYPE_TEMPORARY,EffectVisualEffect(VFX_COM_SPECIAL_WHITE_ORANGE,FALSE),oTemp,1.0)); DelayCommand(3.0,ApplyEffectToObject(DURATION_TYPE_TEMPORARY,EffectVisualEffect(VFX_COM_SPARKS_PARRY,FALSE),oTemp,1.0)); DelayCommand(4.0,ApplyEffectToObject(DURATION_TYPE_TEMPORARY,EffectVisualEffect(VFX_COM_SPECIAL_RED_WHITE,FALSE),oTemp,1.0)); AssignCommand(oTemp,DelayCommand(5.0,CreateFire(oTemp))); DestroyObject(oTemp,10.0); } void CreateFire(object oTemp) { object oTemp2 =CreateObject(OBJECT_TYPE_PLACEABLE,"campfire001",GetLocation(oTemp),FALSE); AssignCommand(oTemp2,PlaySound("al_cv_firebowl1")); return; }