Jump to content

Any interest in Lua?


Icesythe7

Recommended Posts

Hello there, I enjoy coding in lua and found that only wow's outdated lua 5.0 api can be used(for vanilla), so I had the idea of making a plugin that could use all of WRobots api in an lua script to make fight classes, profiles, or anything really, so far I have a working prototype but was curious if I would be the only one using it or if there is any interest from the community to use lua scripting? If you guys would use the plugin then I will gladly continue work on it, currently it can run a simple script like this:

local me = objectManager.me

local ConjureWater = spell.__new("Conjure Water");
local ConjureFood = spell.__new("Conjure Food");
local ConjureManaRuby = spell.__new("Conjure Mana Ruby");
local ConjureManaCitrine = spell.__new("Conjure Mana Citrine");
local ConjureManaJade = spell.__new("Conjure Mana Jade");
local ConjureManaAgate = spell.__new("Conjure Mana Agate");
local IceArmor = spell.__new("Ice Armor");
local FrostArmor = spell.__new("Frost Armor");
local ArcaneInt = spell.__new("Arcane Intellect");
local ManaShield = spell.__new("Mana Shield");
local IceBarrier = spell.__new("Ice Barrier");
local DampenMagic = spell.__new("Dampen Magic");
local FrostBolt = spell.__new("Frostbolt");
local FireBall = spell.__new("Fireball");
local FrostNova = spell.__new("Frost Nova");
local Blink = spell.__new("Blink");
local FireBlast = spell.__new("Fire Blast");
local CoC = spell.__new("Cone of Cold");
local CounterSpell = spell.__new("Counterspell");
local PolyMorph = spell.__new("Polymorph");

function Buff()
	if FrostArmor.knownSpell and (not me.haveBuff("Frost Armor")) then
		return FrostArmor.launch()
	elseif ArcaneInt.knownSpell and (not me.haveBuff("Arcane Intellect")) then
		return ArcaneInt.launch()
	end
end

function EatDrink()
	--todo
end

function Fight()
	if FrostBolt.knownSpell and objectManager.target ~= nil and (not me.isCast) then
		return FireBlast.launch() or FrostBolt.launch()
	end
end

function onTick()
	if me.isDeadMe then return end

	if me.inCombat then
		Fight()
	elseif (not me.haveBuff("Frost Armor")) or (not me.haveBuff("Arcane Intellect")) then
		Buff()
	end
end

function onDraw()
	if objectManager.target == nil then return end

	draw.line(me.position, objectManager.target.position, color.black)
end

If you guys have any input on callbacks needed or api needed I can probably make it all, the project can be found here if anyone is curious or has suggestions on things to change 

LuaPlugin

Link to comment
Share on other sites

Just now, BetterSister said:

Impressive code. You doing this all with trial license?

Yes, I don't have extra money right now and its not a big deal anyways only annoying part is the math equation I have to do every restart lol 

Link to comment
Share on other sites

1 minute ago, BetterSister said:

I personally think @Droidz should give you free 1 month private server license. We need more people like you who can do programming :rolleyes: If i wasn't so broke at the moment i would just buy the license for you

lol it's ok I enjoy coding altho this really should be implemented into core because it is hard to get the correct thread to run the lua environment on

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...