Exemple #1
0
int NPC_Lua_NLG_UpStateByThird(lua_State *_NLL)
{
	CheckEx(_NLL, 2);
	CheckIndexNull(_NLL, 1);
	int TM_Index = (int)lua_tointeger(_NLL, 1);
	int TM_Flg = (int)lua_tointeger(_NLL, 2);
	BOOL TM_Ret = CHAR_send_P_StatusString(TM_Index, TM_Flg);
	LRetBool(_NLL, TM_Ret);
}
Exemple #2
0
int NPC_Lua_NLG_DischargeParty(lua_State *_NLL)
{
	CheckEx(_NLL, 1);
	CheckIndexNull(_NLL, 1);
	int TM_index = (int)lua_tointeger(_NLL, 1);

	BOOL TM_Ret = CHAR_DischargeParty( TM_index, 0);

	LRetBool(_NLL, TM_Ret);
}
Exemple #3
0
int NPC_Lua_NLG_Warp(lua_State *_NLL)
{
	CheckEx(_NLL, 4);
	CheckIndexNull(_NLL, 1);
	int TM_Index = (int)lua_tointeger(_NLL, 1);
	int TM_Floor = (int)lua_tointeger(_NLL, 2);
	int TM_X = (int)lua_tointeger(_NLL, 3);
	int TM_Y = (int)lua_tointeger(_NLL, 4);

	BOOL TM_Ret = CHAR_warpToSpecificPoint(TM_Index, TM_Floor, TM_X, TM_Y);
	
	LRetBool(_NLL, TM_Ret);
}
Exemple #4
0
//////////////////////////////////////////////////////////////////////////////
//功能接口
int NPC_Lua_NLG_CheckInFront(lua_State *_NLL)
{
	CheckEx(_NLL, 3);
	CheckIndexNull(_NLL, 1);
	CheckIndexNull(_NLL, 2);
	int TM_SurIndex = (int)lua_tointeger(_NLL, 1);
	int TM_DesIndex = (int)lua_tointeger(_NLL, 2);
	int TM_Distance = (int)lua_tointeger(_NLL, 3);

	BOOL TM_Ret = NPC_Util_charIsInFrontOfChar(TM_SurIndex, TM_DesIndex, TM_Distance);
	
	LRetBool(_NLL, TM_Ret);
}
Exemple #5
0
int NPC_Lua_NLG_DelItem(lua_State *_NLL)
{
	CheckEx2(_NLL, 2, 3);
	CheckIndexNull(_NLL, 1);
	int TM_Index = (int)lua_tointeger(_NLL, 1);
	int TM_ItemID = (int)lua_tointeger(_NLL, 2);
	int TM_Num = 1;
	
	if(lua_gettop(_NLL) == 3)
	{
		TM_Num = (int)lua_tointeger(_NLL, 3);
	}

	BOOL TM_Ret = NPC_ActionDoPileDelItem(TM_Index, TM_ItemID, TM_Num);
	
	LRetBool(_NLL, TM_Ret);
}
Exemple #6
0
//設置數據的接口
int NPC_Lua_Item_SetData(lua_State *_NLL)
{
	CheckEx(_NLL, 3);
	CheckItemIndexNull(_NLL, 1);
	int TM_Index = (int)lua_tointeger(_NLL, 1);
	int TM_Flg = (int)lua_tointeger(_NLL, 2);

	if(TM_Flg >= 0)
	{
		if(TM_Flg < LUA_DATALINE1)
		{
			TM_Flg -= LUA_DATALINE0;
			int TM_IntVal = (int)lua_tointeger(_NLL, 3);
			int TM_RetInt = API_ITEM_setInt(TM_Index, TM_Flg, TM_IntVal);
			LRetInt(_NLL, TM_RetInt);
		}else if(TM_Flg < LUA_DATALINE2)
		{
			TM_Flg -= LUA_DATALINE1;
			char *TM_CharPoint = (char *)lua_tostring(_NLL, 3);
			BOOL TM_RetBOOL = API_ITEM_setChar(TM_Index, TM_Flg, TM_CharPoint);
			LRetBool(_NLL, TM_RetBOOL);
		}else if(TM_Flg < LUA_DATALINE3)
		{
			TM_Flg -= LUA_DATALINE2;
			//if(TM_Flg == ITEM_WORKOBJINDEX || TM_Flg == ITEM_WORKCHARAINDEX)
			if(TM_Flg == 0 )
			{
				LRetInt(_NLL, 0);
			}
			int TM_WorkIntVal = (int)lua_tointeger(_NLL, 3);
			int TM_RetInt = API_ITEM_setWorkInt(TM_Index, TM_Flg, TM_WorkIntVal);
			LRetInt(_NLL, TM_RetInt);
		}else
		{
			LRetErrNull(_NLL, "傳入的標誌是錯誤的。");
		}
	}
	LRetErrNull(_NLL, "傳入的標誌是錯誤的。");
}