Пример #1
0
namespace internal
{

// Runs a cache check for the given repository
int check_cache(lua_State *L)
{
	bool force = false;
	if (lua_gettop(L) != 1 && lua_gettop(L) != 2) {
		return LuaHelpers::pushError(L, "Invalid number of arguments (1 or 2 expected)");
	}
	if (lua_gettop(L) > 1) {
		force = lua_type(L, 0) != LUA_TNIL;
		lua_pop(L, 1);
	}
	Repository *repo = LuaHelpers::popl<Repository>(L);
	AbstractCache *cache = dynamic_cast<AbstractCache *>(repo->backend());
	if (cache == NULL) {
		return LuaHelpers::pushError(L, "No active cache found");
	}

	try {
		cache->check(force);
	} catch (const PepperException &ex) {
		return LuaHelpers::pushError(L, str::printf("Error checking cache: %s: %s", ex.where(), ex.what()));
	} catch (const std::exception &ex) {
		return LuaHelpers::pushError(L, str::printf("Error checking cache: %s", ex.what()));
	}
	return LuaHelpers::pushNil(L);
}

// Lua wrapper for sys::datetime::Watch
class Watch : public sys::datetime::Watch
{
public:
	Watch(lua_State *) : sys::datetime::Watch() { }

	int start(lua_State *) { sys::datetime::Watch::start(); return 0; }
	int elapsed(lua_State *L) { return LuaHelpers::push(L, sys::datetime::Watch::elapsed()); }
	int elapsedMSecs(lua_State *L) { return LuaHelpers::push(L, sys::datetime::Watch::elapsedMSecs()); }

	static const char className[];
	static Lunar<Watch>::RegType methods[];
};

const char Watch::className[] = "watch";
Lunar<Watch>::RegType Watch::methods[] = {
	LUNAR_DECLARE_METHOD(Watch, start),
	LUNAR_DECLARE_METHOD(Watch, elapsed),
	LUNAR_DECLARE_METHOD(Watch, elapsedMSecs),
	{0,0}
};

// Function table of internal functions
const struct luaL_reg table[] = {
	{"check_cache", check_cache},
	{NULL, NULL}
};

} // namespace internal
Пример #2
0
inline int32 CLuaAbility::setRange(lua_State *L)
{
    DSP_DEBUG_BREAK_IF(m_PLuaAbility == nullptr);
    DSP_DEBUG_BREAK_IF(lua_isnil(L, -1) || !lua_isnumber(L, -1));

    m_PLuaAbility->setRange(lua_tointeger(L, -1));
    return 0;
}

/************************************************************************
*																		*
*  Инициализация методов в lua											*
*																		*
************************************************************************/

const int8 CLuaAbility::className[] = "CAbility";

Lunar<CLuaAbility>::Register_t CLuaAbility::methods[] =
{
    LUNAR_DECLARE_METHOD(CLuaAbility,getID),
    LUNAR_DECLARE_METHOD(CLuaAbility,getRecast),
    LUNAR_DECLARE_METHOD(CLuaAbility,getRange),
    LUNAR_DECLARE_METHOD(CLuaAbility,setMsg),
    LUNAR_DECLARE_METHOD(CLuaAbility,setAnimation),
    LUNAR_DECLARE_METHOD(CLuaAbility,setRecast),
    LUNAR_DECLARE_METHOD(CLuaAbility,setCE),
    LUNAR_DECLARE_METHOD(CLuaAbility,setVE),
    LUNAR_DECLARE_METHOD(CLuaAbility,setRange),
    {nullptr,nullptr}
};
Пример #3
0
{
    DSP_DEBUG_BREAK_IF(m_PLuaAbility == NULL); 
    DSP_DEBUG_BREAK_IF(lua_isnil(L,-1) || !lua_isnumber(L,-1));

    m_PLuaAbility->setAnimationID(lua_tointeger(L,-1));
	return 0;
}

inline int32 CLuaAbility::getID(lua_State *L)
{
    DSP_DEBUG_BREAK_IF(m_PLuaAbility == NULL); 

	lua_pushinteger(L, m_PLuaAbility->getID());
	return 1;
}

/************************************************************************
*																		*
*  Инициализация методов в lua											*
*																		*
************************************************************************/

const int8 CLuaAbility::className[] = "CAbility";

Lunar<CLuaAbility>::Register_t CLuaAbility::methods[] = 
{
    LUNAR_DECLARE_METHOD(CLuaAbility,setMsg),
    LUNAR_DECLARE_METHOD(CLuaAbility,setAnimation),
	LUNAR_DECLARE_METHOD(CLuaAbility,getID),
	{NULL,NULL}
}; 
Пример #4
0
    {
        if (!lua_isnil(L, 1) && lua_isnumber(L, 1))
        {
            uint8 slotID = (uint8)lua_tonumber(L, 1);
            uint8 amount = -1;
            if (lua_isnumber(L, 2))
            {
                amount = (uint8)lua_tonumber(L, 2);
            }
            m_pMyTradeContainer->setConfirmedStatus(slotID, amount);
        }
    }
    return 0;
}

//======================================================//

const int8 CLuaTradeContainer::className[] = "TradeContainer";
Lunar<CLuaTradeContainer>::Register_t CLuaTradeContainer::methods[] =
{
    LUNAR_DECLARE_METHOD(CLuaTradeContainer,getGil),
    LUNAR_DECLARE_METHOD(CLuaTradeContainer,getItem),
    LUNAR_DECLARE_METHOD(CLuaTradeContainer,getItemSubId),
    LUNAR_DECLARE_METHOD(CLuaTradeContainer,getItemCount),
    LUNAR_DECLARE_METHOD(CLuaTradeContainer,getSlotCount),
    LUNAR_DECLARE_METHOD(CLuaTradeContainer,getItemQty),
    LUNAR_DECLARE_METHOD(CLuaTradeContainer,getSlotQty),
    LUNAR_DECLARE_METHOD(CLuaTradeContainer,hasItemQty),
    LUNAR_DECLARE_METHOD(CLuaTradeContainer,confirmItem),
    {nullptr,nullptr}
};
Пример #5
0
    uint16 augmentid = unpackBitsBE((uint8*)(&augment), 0, 11);
    uint8 augmentVal = unpackBitsBE((uint8*)(&augment), 11, 5);

    lua_pushinteger(L, augmentid);
    lua_pushinteger(L, augmentVal);

    return 2;
}

//==========================================================//

const int8 CLuaItem::className[] = "CItem";

Lunar<CLuaItem>::Register_t CLuaItem::methods[] =
{
    LUNAR_DECLARE_METHOD(CLuaItem,getID),
    LUNAR_DECLARE_METHOD(CLuaItem,getSubID),
    LUNAR_DECLARE_METHOD(CLuaItem,getFlag),
    LUNAR_DECLARE_METHOD(CLuaItem,getAHCat),
    LUNAR_DECLARE_METHOD(CLuaItem,getQuantity),
    LUNAR_DECLARE_METHOD(CLuaItem,getLocationID),
    LUNAR_DECLARE_METHOD(CLuaItem,getSlotID),
    LUNAR_DECLARE_METHOD(CLuaItem,getWornItem),
    LUNAR_DECLARE_METHOD(CLuaItem,isType),
    LUNAR_DECLARE_METHOD(CLuaItem,isSubType),
    LUNAR_DECLARE_METHOD(CLuaItem,getName),
    LUNAR_DECLARE_METHOD(CLuaItem,getMod),
    LUNAR_DECLARE_METHOD(CLuaItem,addMod),
    LUNAR_DECLARE_METHOD(CLuaItem,delMod),
    LUNAR_DECLARE_METHOD(CLuaItem,getAugment),
    {nullptr,nullptr}
Пример #6
0
 */
 
#include <stdio.h>
#include "lua_script.h"
#include "lua_cube.h"
#include "lua_system.h"
#include "lodepng.h"
#include "color.h"
#include "svmmemory.h"
#include "cubeslots.h"
#include "ostime.h"

const char LuaCube::className[] = "Cube";

Lunar<LuaCube>::RegType LuaCube::methods[] = {
    LUNAR_DECLARE_METHOD(LuaCube, reset),
    LUNAR_DECLARE_METHOD(LuaCube, isDebugging),
    LUNAR_DECLARE_METHOD(LuaCube, lcdFrameCount),
    LUNAR_DECLARE_METHOD(LuaCube, lcdPixelCount),
    LUNAR_DECLARE_METHOD(LuaCube, exceptionCount),
    LUNAR_DECLARE_METHOD(LuaCube, getNeighborID),
    LUNAR_DECLARE_METHOD(LuaCube, getRadioAddress),
    LUNAR_DECLARE_METHOD(LuaCube, handleRadioPacket),
    LUNAR_DECLARE_METHOD(LuaCube, saveScreenshot),
    LUNAR_DECLARE_METHOD(LuaCube, testScreenshot),
    LUNAR_DECLARE_METHOD(LuaCube, testSetEnabled),
    LUNAR_DECLARE_METHOD(LuaCube, testGetACK),
    LUNAR_DECLARE_METHOD(LuaCube, testWrite),
    LUNAR_DECLARE_METHOD(LuaCube, xbPoke),
    LUNAR_DECLARE_METHOD(LuaCube, xwPoke),
    LUNAR_DECLARE_METHOD(LuaCube, xbPeek),
inline int32 CLuaStatusEffect::addMod(lua_State* L)
{
	DSP_DEBUG_BREAK_IF(m_PLuaStatusEffect == NULL);
	
	DSP_DEBUG_BREAK_IF(lua_isnil(L,1) || !lua_isnumber(L,1));
	DSP_DEBUG_BREAK_IF(lua_isnil(L,2) || !lua_isnumber(L,2));
	
	m_PLuaStatusEffect->addMod( lua_tointeger(L,1), lua_tointeger(L,2) );
	return 1;
}

//======================================================//

const int8 CLuaStatusEffect::className[] = "CLuaStatusEffect";

Lunar<CLuaStatusEffect>::Register_t CLuaStatusEffect::methods[] = 
{
	LUNAR_DECLARE_METHOD(CLuaStatusEffect,getType),
	LUNAR_DECLARE_METHOD(CLuaStatusEffect,getSubType),
    LUNAR_DECLARE_METHOD(CLuaStatusEffect,setIcon),
	LUNAR_DECLARE_METHOD(CLuaStatusEffect,getPower),
	LUNAR_DECLARE_METHOD(CLuaStatusEffect,setPower),
	LUNAR_DECLARE_METHOD(CLuaStatusEffect,getDuration),
	LUNAR_DECLARE_METHOD(CLuaStatusEffect,setDuration),
	LUNAR_DECLARE_METHOD(CLuaStatusEffect,getStartTime),
	LUNAR_DECLARE_METHOD(CLuaStatusEffect,getLastTick),
	LUNAR_DECLARE_METHOD(CLuaStatusEffect,getTickCount),
    LUNAR_DECLARE_METHOD(CLuaStatusEffect,resetStartTime),
	LUNAR_DECLARE_METHOD(CLuaStatusEffect,addMod),
	{NULL,NULL}
}; 
Пример #8
0
/************************************************************************
*                                                                       *
*                                                                       *
*                                                                       *
************************************************************************/

inline int32 CLuaRegion::DelCount(lua_State *L)
{
    DSP_DEBUG_BREAK_IF(m_PLuaRegion == NULL); 
    DSP_DEBUG_BREAK_IF(lua_isnil(L,-1) || !lua_isnumber(L,-1));

    lua_pushinteger(L, m_PLuaRegion->DelCount(lua_tointeger(L,-1)));
	return 1;
}

/************************************************************************
*																		*
*  Инициализация методов в lua											*
*																		*
************************************************************************/

const int8 CLuaRegion::className[] = "CRegion";

Lunar<CLuaRegion>::Register_t CLuaRegion::methods[] = 
{
	LUNAR_DECLARE_METHOD(CLuaRegion,GetRegionID),
    LUNAR_DECLARE_METHOD(CLuaRegion,GetCount),
    LUNAR_DECLARE_METHOD(CLuaRegion,AddCount),
    LUNAR_DECLARE_METHOD(CLuaRegion,DelCount),
	{NULL,NULL}
}; 
Пример #9
0
}

void LuaCar::setSelf(Car *self, CarControl *control)
{
  this->self = self;
  this->control = control;
}

Car *LuaCar::getSelf()
{
  return this->self;
}

const char LuaCar::className[] = "LuaCar";
Lunar<LuaCar>::RegType LuaCar::methods[] = {
  LUNAR_DECLARE_METHOD(LuaCar, getPosition),
  LUNAR_DECLARE_METHOD(LuaCar, getLane),
  LUNAR_DECLARE_METHOD(LuaCar, getSpeed),
  LUNAR_DECLARE_METHOD(LuaCar, getType),
  LUNAR_DECLARE_METHOD(LuaCar, getGeometry),
  LUNAR_DECLARE_METHOD(LuaCar, isTracked),
  LUNAR_DECLARE_METHOD(LuaCar, isLeftAllowed),
  LUNAR_DECLARE_METHOD(LuaCar, isRightAllowed),
  LUNAR_DECLARE_METHOD(LuaCar, nextTrafficLight),
  LUNAR_DECLARE_METHOD(LuaCar, setAcceleration),
  LUNAR_DECLARE_METHOD(LuaCar, setSpeed),
  LUNAR_DECLARE_METHOD(LuaCar, setLaneChange),
  LUNAR_DECLARE_METHOD(LuaCar, getDestination),
  {0,0}
};
Пример #10
0
inline int32 CLuaMobSkill::getTP(lua_State* L)
{
	DSP_DEBUG_BREAK_IF(m_PLuaMobSkill == NULL);

	lua_pushnumber( L, m_PLuaMobSkill->getTP() );
	return 1;
}

/************************************************************************
*																		*
*  declare lua function													*
*																		*
************************************************************************/

const int8 CLuaMobSkill::className[] = "CMobSkill";
Lunar<CLuaMobSkill>::Register_t CLuaMobSkill::methods[] =
{
    LUNAR_DECLARE_METHOD(CLuaMobSkill,setMsg),
    LUNAR_DECLARE_METHOD(CLuaMobSkill,getMsg),
    LUNAR_DECLARE_METHOD(CLuaMobSkill,hasMissMsg),
    LUNAR_DECLARE_METHOD(CLuaMobSkill,isAoE),
    LUNAR_DECLARE_METHOD(CLuaMobSkill,isConal),
    LUNAR_DECLARE_METHOD(CLuaMobSkill,isSingle),
    LUNAR_DECLARE_METHOD(CLuaMobSkill,getParam),
  LUNAR_DECLARE_METHOD(CLuaMobSkill,getID),
	LUNAR_DECLARE_METHOD(CLuaMobSkill,getTotalTargets),
	LUNAR_DECLARE_METHOD(CLuaMobSkill,getTP),
	LUNAR_DECLARE_METHOD(CLuaMobSkill,setSkillchain),
	{NULL,NULL}
};
Пример #11
0
    return 0;
}

inline int32 CLuaAction::setAdditionalEffect(lua_State* L)
{
    DSP_DEBUG_BREAK_IF(m_PLuaAction == nullptr);

    m_PLuaAction->additionalEffect = static_cast<SUBEFFECT>(lua_tointeger(L, -1));
    return 0;
}

inline int32 CLuaAction::setAddEffectParam(lua_State* L)
{
    DSP_DEBUG_BREAK_IF(m_PLuaAction == nullptr);
    m_PLuaAction->addEffectParam = lua_tointeger(L, -1);
    return 0;
}


// Initialize Lua Methods
const int8 CLuaAction::className[] = "CAction";

Lunar<CLuaAction>::Register_t CLuaAction::methods[] =
{
    LUNAR_DECLARE_METHOD(CLuaAction, setParam),
    LUNAR_DECLARE_METHOD(CLuaAction, setMessageID),
    LUNAR_DECLARE_METHOD(CLuaAction, setAddEffectParam),
    LUNAR_DECLARE_METHOD(CLuaAction, setAdditionalEffect),
    {nullptr,nullptr}
};
Пример #12
0
	DSP_DEBUG_BREAK_IF(m_PLuaInstance == NULL);
	
	lua_pushstring( L, m_PLuaInstance->m_FastestName.c_str() );
	return 1;
}

inline int32 CLuaInstance::setAsFastest(lua_State* L){
	DSP_DEBUG_BREAK_IF(m_PLuaInstance == NULL);
	
	lua_pushinteger( L, 0 );
	return 1;
}


/************************************************************************
*																		*
*  declare lua function													*
*																		*
************************************************************************/

const int8 CLuaInstance::className[] = "CInstance";
Lunar<CLuaInstance>::Register_t CLuaInstance::methods[] = 
{
    LUNAR_DECLARE_METHOD(CLuaInstance,getInstanceNumber),
	LUNAR_DECLARE_METHOD(CLuaInstance,getBcnmID),
	LUNAR_DECLARE_METHOD(CLuaInstance,getTimeLimit),
	LUNAR_DECLARE_METHOD(CLuaInstance,getTimeInside),
	LUNAR_DECLARE_METHOD(CLuaInstance,getFastestTime),
	LUNAR_DECLARE_METHOD(CLuaInstance,getFastestPlayer),
	{NULL,NULL}
}; 
Пример #13
0
#include "flash_device.h"
#include "flash_blockcache.h"
#include "flash_volume.h"
#include "flash_volumeheader.h"
#include "flash_lfs.h"
#include "flash_stack.h"
#include "flash_recycler.h"
#include "flash_syslfs.h"
#include "elfprogram.h"

const char LuaFilesystem::className[] = "Filesystem";
const char LuaFilesystem::callbackHostField[] = "__filesystem_callbackHost";
bool LuaFilesystem::callbacksEnabled;

Lunar<LuaFilesystem>::RegType LuaFilesystem::methods[] = {
    LUNAR_DECLARE_METHOD(LuaFilesystem, newVolume),
    LUNAR_DECLARE_METHOD(LuaFilesystem, listVolumes),
    LUNAR_DECLARE_METHOD(LuaFilesystem, deleteVolume),
    LUNAR_DECLARE_METHOD(LuaFilesystem, volumeType),
    LUNAR_DECLARE_METHOD(LuaFilesystem, volumeParent),
    LUNAR_DECLARE_METHOD(LuaFilesystem, volumeMap),
    LUNAR_DECLARE_METHOD(LuaFilesystem, volumeEraseCounts),
    LUNAR_DECLARE_METHOD(LuaFilesystem, volumePayload),
    LUNAR_DECLARE_METHOD(LuaFilesystem, simulatedBlockEraseCounts),
    LUNAR_DECLARE_METHOD(LuaFilesystem, rawRead),
    LUNAR_DECLARE_METHOD(LuaFilesystem, rawWrite),
    LUNAR_DECLARE_METHOD(LuaFilesystem, rawErase),
    LUNAR_DECLARE_METHOD(LuaFilesystem, invalidateCache),
    LUNAR_DECLARE_METHOD(LuaFilesystem, setCallbacksEnabled),
    LUNAR_DECLARE_METHOD(LuaFilesystem, onRawRead),
    LUNAR_DECLARE_METHOD(LuaFilesystem, onRawWrite),
Пример #14
0
		if (buffer.empty()) {
			return false;
		}
		in >> stat.cadd >> stat.ladd >> stat.cdel >> stat.ldel;
		m_stats[buffer] = stat;
	}
	return true;
}

/*
 * Lua binding
 */

const char Diffstat::className[] = "diffstat";
Lunar<Diffstat>::RegType Diffstat::methods[] = {
	LUNAR_DECLARE_METHOD(Diffstat, files),
	LUNAR_DECLARE_METHOD(Diffstat, lines_added),
	LUNAR_DECLARE_METHOD(Diffstat, bytes_added),
	LUNAR_DECLARE_METHOD(Diffstat, lines_removed),
	LUNAR_DECLARE_METHOD(Diffstat, bytes_removed),
	{0,0}
};

Diffstat::Diffstat(lua_State *L) {
	Diffstat *other = Lunar<Diffstat>::check(L, 1);
	if (other == NULL) {
		return;
	}
	m_stats = other->m_stats;
}
Пример #15
0
{
	DSP_DEBUG_BREAK_IF(m_PLuaBattlefield == nullptr);

	m_PLuaBattlefield->win();

	return 0;
}

/************************************************************************
*																		*
*  declare lua function													*
*																		*
************************************************************************/

const int8 CLuaBattlefield::className[] = "CBattlefield";
Lunar<CLuaBattlefield>::Register_t CLuaBattlefield::methods[] = 
{
    LUNAR_DECLARE_METHOD(CLuaBattlefield,getBattlefieldNumber),
	LUNAR_DECLARE_METHOD(CLuaBattlefield,getBcnmID),
	LUNAR_DECLARE_METHOD(CLuaBattlefield,getTimeLimit),
	LUNAR_DECLARE_METHOD(CLuaBattlefield,getTimeInside),
	LUNAR_DECLARE_METHOD(CLuaBattlefield,getFastestTime),
	LUNAR_DECLARE_METHOD(CLuaBattlefield,getFastestPlayer),
	LUNAR_DECLARE_METHOD(CLuaBattlefield,getEntrance),
	LUNAR_DECLARE_METHOD(CLuaBattlefield,setEntrance),
	LUNAR_DECLARE_METHOD(CLuaBattlefield,insertAlly),
	LUNAR_DECLARE_METHOD(CLuaBattlefield,getAllies),
	LUNAR_DECLARE_METHOD(CLuaBattlefield,lose),
	LUNAR_DECLARE_METHOD(CLuaBattlefield,win),
	{nullptr,nullptr}
}; 
Пример #16
0
    lua_pushinteger(L, m_pLuaZone->GetID());

    return 1;
}

inline int32 CLuaZone::getRegionID(lua_State* L)
{
    DSP_DEBUG_BREAK_IF(m_pLuaZone == nullptr);

    lua_pushinteger(L, m_pLuaZone->GetRegionID());

    return 1;
}

/************************************************************************
*																		*
*  Инициализация методов в lua											*
*																		*
************************************************************************/

const int8 CLuaZone::className[] = "CZone";
Lunar<CLuaZone>::Register_t CLuaZone::methods[] =
{
    LUNAR_DECLARE_METHOD(CLuaZone,levelRestriction),
    LUNAR_DECLARE_METHOD(CLuaZone,registerRegion),
    LUNAR_DECLARE_METHOD(CLuaZone,getPlayers),
    LUNAR_DECLARE_METHOD(CLuaZone,getID),
    LUNAR_DECLARE_METHOD(CLuaZone,getRegionID),
    {nullptr,nullptr}
};
Пример #17
0
}

/************************************************************************
*																		*
*  Устанавливаем ограничение уровня для зоны							*
*																		*
************************************************************************/

inline int32 CLuaZone::levelRestriction(lua_State *L)
{
	if( m_pLuaZone != NULL) 
	{
		
	}
	lua_pushnil(L);
	return 1;
}

/************************************************************************
*																		*
*  Инициализация методов в lua											*
*																		*
************************************************************************/

const int8 CLuaZone::className[] = "CZone";
Lunar<CLuaZone>::Register_t CLuaZone::methods[] = 
{
	LUNAR_DECLARE_METHOD(CLuaZone,levelRestriction),
	LUNAR_DECLARE_METHOD(CLuaZone,registerRegion),
	{NULL,NULL}
}; 
Пример #18
0
                actionList.actionTargets[0].addEffectMessage = lua_tointeger(L, 2);
                return 0;
            }
            else
            {
                lua_pushinteger(L, actionList.actionTargets[0].addEffectMessage);
                return 1;
            }
        }
    }
    return 0;
}

// Initialize Lua Methods
const int8 CLuaAction::className[] = "CAction";

Lunar<CLuaAction>::Register_t CLuaAction::methods[] =
{
    LUNAR_DECLARE_METHOD(CLuaAction, recast),
    LUNAR_DECLARE_METHOD(CLuaAction, actionID),
    LUNAR_DECLARE_METHOD(CLuaAction, param),
    LUNAR_DECLARE_METHOD(CLuaAction, messageID),
    LUNAR_DECLARE_METHOD(CLuaAction, animation),
    LUNAR_DECLARE_METHOD(CLuaAction, speceffect),
    LUNAR_DECLARE_METHOD(CLuaAction, reaction),
    LUNAR_DECLARE_METHOD(CLuaAction, additionalEffect),
    LUNAR_DECLARE_METHOD(CLuaAction, addEffectParam),
    LUNAR_DECLARE_METHOD(CLuaAction, addEffectMessage),
    {nullptr,nullptr}
};
Пример #19
0
inline int32 CLuaSpell::getFlag(lua_State *L)
{
	DSP_DEBUG_BREAK_IF(m_PLuaSpell == NULL);
	lua_pushinteger(L, m_PLuaSpell->getFlag());
	return 1;
}

/************************************************************************
*																		*
*  Инициализация методов в lua											*
*																		*
************************************************************************/

const int8 CLuaSpell::className[] = "CSpell";
Lunar<CLuaSpell>::Register_t CLuaSpell::methods[] =
{
    LUNAR_DECLARE_METHOD(CLuaSpell,setMsg),
	LUNAR_DECLARE_METHOD(CLuaSpell,setAoE),
	LUNAR_DECLARE_METHOD(CLuaSpell,setFlag),
	LUNAR_DECLARE_METHOD(CLuaSpell,setRadius),
	LUNAR_DECLARE_METHOD(CLuaSpell,setAnimation),
	LUNAR_DECLARE_METHOD(CLuaSpell,setMPCost),
    LUNAR_DECLARE_METHOD(CLuaSpell,isAoE),
    LUNAR_DECLARE_METHOD(CLuaSpell,getMagicBurstMessage),
    LUNAR_DECLARE_METHOD(CLuaSpell,getElement),
	LUNAR_DECLARE_METHOD(CLuaSpell,getTotalTargets),
	LUNAR_DECLARE_METHOD(CLuaSpell,getID),
	LUNAR_DECLARE_METHOD(CLuaSpell,getSpellGroup),
	LUNAR_DECLARE_METHOD(CLuaSpell,getFlag),
	{NULL,NULL}
};
Пример #20
0
// Converts from UNIX to Gnuplot epoch
static inline int64_t convepoch(int64_t t)
{
	return t - 946684800;
}

// Gnuplot arguments (-persist only works with the X11 or wxt terminal)
static const char *gp_args[] = {NULL};
static const char *gp_args_persist[] = {"-persist", NULL};


// Static variables for the lua bindings
const char Plot::className[] = "gnuplot";
Lunar<Plot>::RegType Plot::methods[] = {
	LUNAR_DECLARE_METHOD(Plot, cmd),
	LUNAR_DECLARE_METHOD(Plot, set_output),
	LUNAR_DECLARE_METHOD(Plot, set_title),
	LUNAR_DECLARE_METHOD(Plot, set_xrange),
	LUNAR_DECLARE_METHOD(Plot, set_xrange_time),
	LUNAR_DECLARE_METHOD(Plot, plot_series),
	LUNAR_DECLARE_METHOD(Plot, plot_multi_series),
	LUNAR_DECLARE_METHOD(Plot, plot_histogram),
	LUNAR_DECLARE_METHOD(Plot, plot_pie),
	LUNAR_DECLARE_METHOD(Plot, flush),
	{0,0}
};


bool Plot::s_hasX11Term = false;
bool Plot::s_detectTerminals = true;