View Single Post
  #1  
Old 05-22-2019, 09:50 PM
WarAngel's Avatar
WarAngel
Sarnak
 
Join Date: Oct 2017
Location: Washington State
Posts: 54
Default Flymode script, plugin

Yeah I am back again on this silly subject...But I am trying to make script this time. As I usually plagiarize all your folks outstanding works, for my own evil empire. This time I am attempting to actually script myself (well, sorta...)
I need help/push in the right direction.

Searches so far in the past two days... Flymode,$npc,$mob,setflymode,set

*** Done so far ***
I am using a in-game macro to set the NPC(Mob) flymode=0. This (for me) enables myself to hear the walking sounds of mobs nearby. Now I am trying to do this automated through a script (script is below).

*** Concerns ***
1. Since the macro is a clicky, it is dependent on my interaction with the NPC. Which is "meh", it works, but I am concerned about the effect it might have on the NPC(see number 2) as I leave its area of influence.
2. I am concerned with scripting issues and so forth with everything tied to a flymode=3.


*** Intention***
1. I am trying to use a script that will fire...to change the NPC(Mob)'s Flymode=0, when entering a $client range...and set it back to Flymode=3 when leaving.
2. I plan to make this a plugin and then call on it in the Global_player.pl.
3. It will have exception list for water mobs and such eventually.
4. Maybe figure out to make a in-game toggle command, just in case I come across a weird issue.
5. Will place it all in a quest::timer.

*** CURRENT ISSUE ***
I am having the worst brainfog on what to do, to get a mob's flymode to change. I can do it with a in-game command. And it seems looking at the Perl Reference list I can do this in a script. Of course unless I can get the script below to work, it is no use to go any further.

All my attempts that do not (seem) work have been #commented out but left to reference on failures.
Any suggestions?

(Placed in a global_npc.pl. for testing)
sub EVENT_SAY
# Testing only for now...later this will be in a check_distance on a timer...etc.
{
if($text=~/hail/i)
{
quest::say("You have grounded me!");

# my $npc_target = $client->GetTarget();
# my $mob_target = $npc_target->GetID();

# quest::FlyMode(0);
# $mob->SetFlyMode(uint8 flymode[0])
# $mob->SetFlyMode(0);
# SetFlyMode(0);
# $mob->SetFlyMode(uint8 flymode(0));
# $mob->SetFlyMode(uint8 flymode() = 0);
# $npc->SetFlyMode(0);
# my->SetFlyMode(0);
# $npc_target->SetFlyMode(0);
# $npc_target->SetFlyMode(flymode 0);
# $npc->SetFlyMode(flymode 0);
# SetFlyMode(0);

}
}

Thank you in advance!!
-Eric
Reply With Quote