Lineage 2 Tower Forum

Full Version: scrip ERTHIA
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
alguna scrip para la raza nueva ( maga ) ,
graciasssShy
me sumo al post!!

alguien tendra la script del fighter??? :C
(08-25-2014 00:59 AM)rodritonic Wrote: [ -> ]me sumo al post!!

alguien tendra la script del fighter??? :C

El de maga ertheia esta por todos lados, incluso en el post de referencia esta el enlace fiajte arrriba entre los temas pinchados.


El de Fighter no lo vi funcionando. En los scripts que revise, solo toma en cuenta que los skills se han armado dentro de funciones para controlar las distancias entre vos y el objetivo, y si son masivos ver el tema de otros personajes flag a tu alrededor... fuera eso...

UseSkillRaw (idskillfighter,false,false);


Saludos.

(08-24-2014 19:23 PM)alku Wrote: [ -> ]alguna scrip para la raza nueva ( maga ) ,
graciasssShy


Aqui tienes un ejemplo basico de magas Ertheia. Ya he visto Scripts super complejos para Ertheias de mucho nivel... pero de eso tendras tiempo luego.

    LUA Programming
AirRushID = 30012;
HydroAttackID = 30001;
HydroFlareID = 30003;
StormSignID = 30002; -- Storm Sign
HydroDrainID = 30007;
SayhasWordID = 30019;
ThreateningWindID = 30011;
 
----------Config-------------
RangePickup = 300; --Range to pick items defalt 300 set -1 to not pick items
-----------------------------
 
-----------------------------
 
 
function AirRush()
	local mySkills = GetSkills();
	local shadow = mySkills:FindById(AirRushID);
	if (shadow ~= nil) and (shadow:IsSkillAvailable()) and (shadow:CanBeUsed()) then
 local myTarget = GetTarget();
 if (CheckTargetCanBeUsedSkill(myTarget)) then
 if ((myTarget:IsAlikeDeath() == false) and (myTarget:GetRangeTo(me) > 200)) then
 UseSkill(AirRushID);
 end;
 end;
	end;
end;
 
 
function HydroFlare()
	local mySkills = GetSkills();
	local Hydro = mySkills:FindById(HydroFlareID);
	local Drain = mySkills:FindById(HydroDrainID);
	local me = GetMe();
	local myTarget = GetTarget();
	if (CheckTargetCanBeUsedSkill(myTarget)) and (myTarget:GotBuff(StormSignID)) then
	if (Hydro ~= nil) and(Hydro:IsSkillAvailable())and (Hydro:CanBeUsed()) or (Drain ~= nil) and(Hydro:IsSkillAvailable()) and (Drain:CanBeUsed()) then
	if (me:GetHpPercent()<= 80) or (me:GetMpPercent()<= 50)then
 UseSkill(HydroDrainID);
	else
 UseSkill(HydroFlareID);
 end;
 end;
 end;
end;
 
 
 
function UseSkill(skillID)	
	local myTarget = GetTarget();
	local mySkills = GetSkills();
	if (CheckTargetCanBeUsedSkill(myTarget)) then
 local Skill = mySkills:FindById(skillID);
 if (Skill ~= nil) and (Skill:IsSkillAvailable()) and (Skill:CanBeUsed()) then 
 UseSkillRaw(skillID, false, false);
 Sleep(500);
 end;
	end;
end;
 
 
function CheckTargetCanBeUsedSkill(target)
	if (target~=nil) and not (target:IsMe()) and (target:IsMonster()) and not (target:IsAlikeDeath()) and not (target:IsPlayer()) then
 return true;
	else
 return false;
	end;
end;
 
function UseBuff()
	if (me ~= nil) and not (me:IsAlikeDeath()) then
 if not me:GotBuff(30017) then
 UseSkillRaw(30017,false,false);
 Sleep(1000);
 end;
	end;
end;
 
 
ShowToClient("SYS","Etheria skills Start.");
 
 
function Pickup(range)
 local ItemsCount = GetItemManager():GetCount();
 if ItemsCount>0 then
 for i=1, ItemsCount do
 item = GetItemManager():GetByIdx(i);
 PickItem = item;
 if item~=nil and item:GetRangeTo(GetMe()) <= range then
 return true;
 end
 end
	end
 
 return false;
end;
-----------------------------------------
function MoveToItem(Item)
	loc = Item:GetLocation();
	lX = loc.X;
	lY = loc.Y;
	MoveToNoWait(lX, lY, loc.Z);
end;
------------------------------------------
 
------------------------------------------
function Main()
target = GetTarget();
	me = GetMe(); 
	MySkills = GetSkills(); 
	if (target ~= nil) and (target:IsAttacking()) or not Pickup (RangePickup) then
	if (me ~= nil) and not (me:IsAlikeDeath()) then
 
 UseBuff();
 AirRush();
 HydroFlare();
-- UseSkill (ThreateningWindID);
 UseSkill (SayhasWordID);
 UseSkill (HydroAttackID);
 end;
 else
 MoveToItem(PickItem);
 Command('/pickup');
	end;
end;
 
 
repeat
	if not IsPaused() then
 
 Main();
 Sleep(1000);
end;
until false;

muchas gracias , funciona bien . una cosita porfis , como quito el pickup ?
(08-26-2014 12:04 PM)alku Wrote: [ -> ]muchas gracias , funciona bien . una cosita porfis , como quito el pickup ?


Lo mas facil es setear -1 pickup range

RangePickup = -1;

Sino
Comentale las lineas de pickup para que te quede asi:

    LUA Programming
-- MoveToItem(PickItem);
-- Command('/pickup');



y tambien dentro del main() elimina lo subrayado.. pero mas facil.. ponele range -1

if (target ~= nil) and (target:IsAttacking()) or not Pickup (RangePickup) then
muchas gracias
Reference URL's