View Single Post
  #5  
Old 01-26-2015, 10:39 PM
silvergrin46
Fire Beetle
 
Join Date: Jan 2015
Posts: 9
Default Some progress, still stuck on a few ideas i'd like to implement in lua

Many of the functions found here seem to be read correctly upon casting my test spell:

https://github.com/EQEmu/Server/wiki/Lua-Mob

Here is an example script which all displays as it should when the spell is cast and triggers a script to be run from global/spells.

Code:
function event_spell_effect(e)

	local P_LVL = e.target:GetLevel(); 	
	local P_RACE = e.target:GetBaseRace(); 
	local P_STR = e.target:GetSTR(); 	
	
	local Mana = e.target:GetMana();
	local ManaCost = (P_LVL*5);
	local NewMana = (Mana - ManaCost);


	e.target:Message(15, "My LEVEL IS: "..P_LVL); 
	e.target:Message(15, "My RACE IS: "..P_RACE);
	e.target:Message(15, "My STR IS: "..P_STR);
	
	e.target:Message(15, "My INITIAL MANA IS: "..Mana);
	e.target:Message(15, "MANACOST TO CAST THIS SPELL IS: "..ManaCost);
	e.target:Message(15, "My MANA TOTAL AFTER CASTING IS: "..NewMana);
	
		if(NewMana < 0) then e.target:Message(5, "You do not have enough mana to use this ability.");
		elseif (NewMana >= 0) then e.target:SetMana(NewMana);
	
	
		end
	end

What one of my goals is to have a spell cast and trigger a script that will cast another spell or trigger the global_player file to cast another spell based on the conditions I specify.

I've tried variations of Selfcast /CastSpell /CastToClient /SignalClient /SignalAllClients etc. and can not seem to get the script to recognize just who e.target really is.

I have figured out how to do so in the lua global_player file, I was just trying to avoid constant access to the player file if I can do so in a separate spell file.
Reply With Quote