Пример #1
0
LuaProxy::VBStr LuaProxy::NPC::layerName(lua_State* L) const
{
	if(!isValid_throw(L))
		return VBStr((wchar_t*)0);

	NPCMOB* thisnpc = ::NPC::Get(m_index);
	return VBStr(thisnpc->layerName.ptr);
}
Пример #2
0
LuaProxy::VBStr LuaProxy::NPC::noMoreObjInLayer(lua_State* L) const
{
	if(!isValid_throw(L))
		return VBStr((wchar_t*)0);

	NPCMOB* thisnpc = ::NPC::Get(m_index);
	return VBStr(thisnpc->noMoreObjInLayerEventName.ptr);
}
Пример #3
0
luabind::object LuaProxy::mem(int mem, LuaProxy::L_FIELDTYPE ftype, lua_State *L)
{
	int iftype = (int)ftype;
    void* ptr = ((&(*(byte*)mem)));

	switch (ftype) {
	case LFT_BYTE:
	case LFT_WORD:
	case LFT_DWORD:
	case LFT_FLOAT:
	case LFT_DFLOAT:
    {
        double val = GetMem((int)ptr, (FIELDTYPE)ftype);
        return luabind::object(L, val);
    }
	case LFT_STRING:
    {
        return luabind::object(L, VBStr((wchar_t*)*((int32_t*)ptr)));
    }
    case LFT_BOOL:
    {
        return luabind::object(L, 0 != *((int16_t*)ptr));
    }
	default:
		return luabind::object();
	}
}
Пример #4
0
LuaProxy::VBStr LuaProxy::getInput()
{
    return VBStr(*(wchar_t**)&GM_INPUTSTR_BUF_PTR);
}