コード例 #1
0
int KScene::LuaUpdateSceneObjectObstacle(Lua_State* L)
{
	BOOL bResult 	= false;
	BOOL bRetCode	= false;
	int	 nTopIndex	= 0;
    DWORD dwSceneObjectID = ERROR_ID;
    BOOL bApply = false;
    KSceneObject* pSceneObject = NULL;
	
	nTopIndex = Lua_GetTopIndex(L);
	KGLOG_PROCESS_ERROR(nTopIndex == 2);

    dwSceneObjectID = (DWORD)Lua_ValueToNumber(L, 1);
    bApply = (BOOL)Lua_ValueToNumber(L, 2);

    pSceneObject = GetSceneObjByID(dwSceneObjectID);
    KGLOG_PROCESS_ERROR(pSceneObject);

    ApplyObstacle(pSceneObject, bApply);

	bResult = true;
Exit0:
	Lua_PushBoolean(L, bResult);
	return 1;
}
コード例 #2
0
ファイル: KLuaItem.cpp プロジェクト: viticm/pap2
int KItem::LuaCanEquip(Lua_State* L)
{
    assert(L);

    int nCanEquipPos = -1;
    int nCanEquip = false;

    KPlayer* pPlayer = g_pSO3World->m_PlayerSet.GetObj(g_pSO3World->m_dwClientPlayerID);
    KGLOG_PROCESS_ERROR(pPlayer);

    KG_PROCESS_ERROR(getGenre() == igEquipment);

    for (int i = 0; i < eitTotal; ++i)
    {
        if (pPlayer->m_ItemList.CanEquip(this, i) == ircSuccess)
        {
            nCanEquipPos = i;
            if (i == eitLeftRing)
                if (pPlayer->m_ItemList.GetItem(igEquipment, eitLeftRing))
                    if (pPlayer->m_ItemList.CanEquip(this, eitRightRing) == ircSuccess)
                        nCanEquipPos = eitRightRing;
            goto Exit1;
        }
    }
    goto Exit0;

Exit1:
    nCanEquip = true;
Exit0:
    Lua_PushBoolean(L, nCanEquip);
    Lua_PushNumber(L, nCanEquipPos);
    return 2;
}
コード例 #3
0
int KScene::LuaSetBattleTotalFrame(Lua_State* L)
{
    BOOL bResult = false;
    BOOL bRetCode = false;
    int nTopIndex = 0;
    int nTotalFrame = 0;
    BOOL bReTiming = false;

    nTopIndex = Lua_GetTopIndex(L);
    KGLOG_PROCESS_ERROR(nTopIndex == 1 || nTopIndex == 2);

    nTotalFrame = (int)Lua_ValueToNumber(L, 1);
    KGLOG_PROCESS_ERROR(nTotalFrame > 0);

    if (nTopIndex == 2)
        bReTiming = (BOOL)Lua_ValueToBoolean(L, 2);

    bRetCode = m_Battle.SetBattleTotalFrame(nTotalFrame, bReTiming);
    KGLOG_PROCESS_ERROR(bRetCode);

    bResult = true;
Exit0:
    Lua_PushBoolean(L, bResult);
    return 1;
}
コード例 #4
0
ファイル: KScriptFuncList.cpp プロジェクト: viticm/pap2
int LuaRefreshMapCopy(Lua_State* L)
{
    BOOL        bResult         = false;
    BOOL        bRetCode        = false;
    int         nTopIndex       = 0;
    DWORD       dwMapID         = 0;
    int         nMapCopyIndex   = 0;
    KMapCopy*   pMapCopy        = NULL;

    nTopIndex = Lua_GetTopIndex(L);
    KGLOG_PROCESS_ERROR(nTopIndex == 2);

    dwMapID       = (DWORD)Lua_ValueToNumber(L, 1);
    nMapCopyIndex = (int)Lua_ValueToNumber(L, 2);

    pMapCopy = g_pSO3GameCenter->m_MapManager.GetMapCopy(dwMapID, nMapCopyIndex);
    KGLOG_PROCESS_ERROR(pMapCopy);
    KGLOG_PROCESS_ERROR(pMapCopy->m_nConnIndex);

    bRetCode = g_pSO3GameCenter->m_GameServer.DoMapCopyDoClearPlayerPrepare(
        pMapCopy->m_nConnIndex, dwMapID, nMapCopyIndex, bpcMapRefresh, BANISH_PLAYER_WAIT_SECONDS
    );
    KGLOG_PROCESS_ERROR(bRetCode);

    pMapCopy->m_eState       = eMapStateRefreshing;
    pMapCopy->m_nRefreshTime = g_pSO3GameCenter->m_nTimeNow + BANISH_PLAYER_WAIT_SECONDS;

Exit0:
    Lua_PushBoolean(L, bResult);
    return 1;
}
コード例 #5
0
ファイル: KScriptFuncList.cpp プロジェクト: viticm/pap2
int LuaCreateTong(Lua_State* L)
{
    int         nResult     = 0;
    BOOL        bRetCode    = false;
    int         nTopIndex   = 0;
    DWORD       dwPlayerID  = 0;
    const char* pszTongName = 0;
    int         nTemplateID = 0;

    nTopIndex = Lua_GetTopIndex(L);
    KGLOG_PROCESS_ERROR(nTopIndex == 3);

    dwPlayerID  = (DWORD)Lua_ValueToNumber(L, 1);

    pszTongName = Lua_ValueToString(L, 2);
    KGLOG_PROCESS_ERROR(pszTongName);

    nTemplateID = (int)Lua_ValueToNumber(L, 3);

    bRetCode = g_pSO3GameCenter->m_TongManager.CreateTong(dwPlayerID, pszTongName, nTemplateID);
    
    Lua_PushBoolean(L, bRetCode);
    nResult = 1;
Exit0:
    return nResult;
}
コード例 #6
0
int KHero::LuaIsTakingBall(Lua_State* L)
{
    BOOL bResult = false;
    bResult = HasFollowerWithStateAndType(mosToken, sotBall);
    Lua_PushBoolean(L, bResult);
    return 1;
}
コード例 #7
0
int KScene::LuaFixObj(Lua_State* L)
{
    BOOL bResult 	= false;
    BOOL bRetCode	= false;
    int	 nTopIndex	= 0;
    int  nObjID     = 0;
    KSceneObject* pSceneObj = NULL;
    KMovableObject* pMoveObj = NULL;
    KPOSITION pos;

    nTopIndex = Lua_GetTopIndex(L);
    KGLOG_PROCESS_ERROR(nTopIndex == 4);

    nObjID = (DWORD)Lua_ValueToNumber(L, 1);
    pos.nX = (int)Lua_ValueToNumber(L, 2);
    pos.nY = (int)Lua_ValueToNumber(L, 3);
    pos.nZ = (int)Lua_ValueToNumber(L, 4);

    pSceneObj = GetSceneObjByID(nObjID);
    KGLOG_PROCESS_ERROR(pSceneObj);
    
    pMoveObj = dynamic_cast<KMovableObject*>(pSceneObj);
    KGLOG_PROCESS_ERROR(pMoveObj);

    pMoveObj->FixTo(pos);
    g_PlayerServer.DoSyncSceneObject(pMoveObj, -1);

    bResult = true;
Exit0:
    Lua_PushBoolean(L, bResult);
    return 1;
}
コード例 #8
0
int KHero::LuaAimAt(Lua_State* L)
{
    BOOL bResult    = false;
    BOOL bRetCode   = false;
    int  nTopIndex  = 0;
    BOOL bAimAt     = false;
    int  nDirection = 0;
    KDoodad* pDoodad = NULL;

    nTopIndex = Lua_GetTopIndex(L);
    KGLOG_PROCESS_ERROR(nTopIndex == 2);
    
    bAimAt = (BOOL)Lua_ValueToNumber(L, 1);
    nDirection = (int)Lua_ValueToNumber(L, 2);

    pDoodad = GetHoldingDoodad();
    KGLOG_PROCESS_ERROR(pDoodad);

    bRetCode = AimAt(bAimAt, nDirection, pDoodad->m_dwID, true);
    KGLOG_PROCESS_ERROR(bRetCode);

    bResult = true;
Exit0:
    Lua_PushBoolean(L, bResult);
    return 1;
}
コード例 #9
0
ファイル: KTeamClient.cpp プロジェクト: viticm/pap2
int KTeamClient::LuaCanSetTeamFormationLeader(Lua_State* L)
{
    BOOL        bResult         = false;
    BOOL        bRetCode        = false;
    KPlayer*    pClientPlayer   = NULL;

    pClientPlayer = g_pSO3World->m_PlayerSet.GetObj(g_pSO3World->m_dwClientPlayerID);
    KGLOG_PROCESS_ERROR(pClientPlayer);

    KGLOG_PROCESS_ERROR(m_dwTeamID != ERROR_ID);

    KG_PROCESS_ERROR(pClientPlayer->m_dwID == m_dwAuthority[tatLeader]);

    for (int i = 0; i < m_nGroupNum; i++)
    {
        if (pClientPlayer->m_dwID == m_TeamGroup[i].dwFormationLeader)
        {
            bResult = true;
            goto Exit0;
        }
    }

Exit0:
    Lua_PushBoolean(L, bResult);
    return 1;
}
コード例 #10
0
ファイル: ksystemscripttable.cpp プロジェクト: viticm/pap2
int KSystemScriptTable::LuaIsMouseButtonSwaped(Lua_State* L)
{
    ASSERT(L);
    BOOL bSwapped = ::GetSystemMetrics(SM_SWAPBUTTON);

    Lua_PushBoolean(L, bSwapped);
    return 1;
}
コード例 #11
0
ファイル: KLuaItem.cpp プロジェクト: viticm/pap2
int KItem::LuaHasScript(Lua_State* L)
{
    BOOL bResult = false;

    bResult = (m_dwScriptID != 0);
    Lua_PushBoolean(L, bResult);
    return 1;
}
コード例 #12
0
int KScene::LuaAddCandyBagOnBasket(Lua_State* L)
{
    BOOL                    bResult             = false;
    BOOL                    bRetCode            = false;
    int                     nTopIndex           = 0;
    DWORD                   dwCandyTemplateID   = ERROR_ID;
    int                     nSide               = 0;
    int                     nBasketFloor        = 0;
    KSceneObjectTemplate*   pTemplate           = NULL;
    KSceneObject*           pObj                = NULL;
    KCandyBag*              pCandyBag           = NULL;
    KBasket*                pBasket             = NULL;

    nTopIndex = Lua_GetTopIndex(L);
    KGLOG_PROCESS_ERROR(nTopIndex == 3);

    dwCandyTemplateID   = (DWORD)Lua_ValueToNumber(L, 1);
    nSide               = (int)Lua_ValueToNumber(L, 2);
    nBasketFloor        = (int)Lua_ValueToNumber(L, 3);
    
    pTemplate = g_pSO3World->m_Settings.m_ObjTemplate.GetTemplate(dwCandyTemplateID);
    KGLOG_PROCESS_ERROR(pTemplate);
    KGLOG_PROCESS_ERROR(pTemplate->m_nType == sotCandyBag);

    KGLOG_PROCESS_ERROR(nSide == sidLeft || nSide == sidRight);
    KGLOG_PROCESS_ERROR(nBasketFloor >= bfFirst && nBasketFloor <= bfSixth);

    pBasket = GetBasket(nSide, nBasketFloor);
    KGLOG_PROCESS_ERROR(pBasket);

    pObj = m_pSceneObjMgr->AddByTemplate(dwCandyTemplateID);
    KGLOG_PROCESS_ERROR(pObj);
    KGLOG_PROCESS_ERROR(pObj->Is(sotCandyBag));

    pCandyBag = (KCandyBag*)pObj;
    pCandyBag->FixTo(pBasket->GetPosition());

    g_PlayerServer.DoSyncSceneObject(pCandyBag, -1);

    bResult = true;
Exit0:
    if (!bResult)
    {
        if (pCandyBag)
        {
            pCandyBag->SetDeleteFlag();
            pCandyBag = NULL;
        }
    }

    Lua_PushBoolean(L, bResult);
    return 1;
}
コード例 #13
0
int KHero::LuaAISay(Lua_State* L)
{
	BOOL bResult 	    = false;
	BOOL bRetCode	    = false;
	int	 nTopIndex	    = 0;
    int  nTalkChannel   = 0;
    int  nMsgType       = trRoom;
    const char* szMessage = NULL;
    DWORD dwTalkID      = ERROR_ID;
    char* szTalkerName  = m_szName;
	
	nTopIndex = Lua_GetTopIndex(L);
	KGLOG_PROCESS_ERROR(nTopIndex == 2);

    nTalkChannel = (int)Lua_ValueToNumber(L, 1);
    KGLOG_PROCESS_ERROR(nTalkChannel == KAI_TALK_CHANNEL_MAP || nTalkChannel == KAI_TALK_CHANNEL_TEAM);

    szMessage = Lua_ValueToString(L, 2);
    KGLOG_PROCESS_ERROR(szMessage);

    if (nTalkChannel == KAI_TALK_CHANNEL_TEAM)
        nMsgType = trTeam;

    if (m_pOwner)
    {
        dwTalkID = m_pOwner->m_dwID;
        szTalkerName = m_pOwner->m_szName;
    }

    for (KObjEnumerator it = m_pScene->GetObjEnumerator(); it.HasElement(); it.MoveToNext())
    {
        KSceneObject* pObj = it.GetValue();
        if (!pObj->Is(sotHero))
            continue;

        KHero* pHero = (KHero*)pObj;
        KPlayer* pOwner = pHero->GetOwner();
        if (!pOwner)
            continue;
        if (pOwner->m_pFightingHero != pHero)
            continue;

        if (nTalkChannel == KAI_TALK_CHANNEL_TEAM && pHero->m_nSide != m_nSide)
            continue;

        g_PlayerServer.DoTalkMessage(nMsgType, dwTalkID, szTalkerName, m_dwID,  ERROR_ID, pOwner->m_dwID, pOwner->m_szName, strlen(szMessage), szMessage);
    }

	bResult = true;
Exit0:
	Lua_PushBoolean(L, bResult);
	return 1;
}
コード例 #14
0
ファイル: ksystemscripttable.cpp プロジェクト: viticm/pap2
int KSystemScriptTable::LuaIsUnpakFileExist(Lua_State* L)
{
    int nRetCode = false;
    const char * pcszFile = NULL;

    KGLOG_PROCESS_ERROR(Lua_GetTopIndex(L) == 1);

    pcszFile = Lua_ValueToString(L, 1);
    KGLOG_PROCESS_ERROR(pcszFile);

    nRetCode = ::PathFileExistsA(pcszFile);
Exit0:
    Lua_PushBoolean(L, nRetCode);
    return 1;
}
コード例 #15
0
ファイル: KLuaItem.cpp プロジェクト: viticm/pap2
int KItem::LuaIsRepairable(Lua_State* L)
{
    BOOL bResult  = false;
    BOOL bRetCode = false;

    KGLOG_PROCESS_ERROR(Lua_GetTopIndex(L) == 0);

    bRetCode = IsRepairable();
    KG_PROCESS_ERROR(bRetCode);

    bResult = true;
Exit0:
    Lua_PushBoolean(L, bResult);
    return 1;
}
コード例 #16
0
int KHero::LuaSwitchAIMode(Lua_State* L)
{
    BOOL bSuccess = false;
    BOOL bAiMode = false;
    int nTopIndex = 0;

    nTopIndex = Lua_GetTopIndex(L);
    KG_PROCESS_ERROR(nTopIndex == 1);

    bAiMode = Lua_ValueToBoolean(L, 1);

    bSuccess = bAiMode ? TurnOnAI() : TurnOffAI();
Exit0:
    Lua_PushBoolean(L, bSuccess);
    return 1;
}
コード例 #17
0
int KScene::LuaStartDrama(Lua_State* L)
{
    BOOL bResult 	= false;
    BOOL bRetCode	= false;
    int	 nTopIndex	= 0;
    int  nDramaID   = 0;

    nTopIndex = Lua_GetTopIndex(L);
    KGLOG_PROCESS_ERROR(nTopIndex == 1);

    nDramaID = (DWORD)Lua_ValueToNumber(L, 1);
    
    bRetCode = m_DramaPlayer.StartDrama(nDramaID);
    KGLOG_PROCESS_ERROR(bRetCode);

    bResult = true;
Exit0:
    Lua_PushBoolean(L, bResult);
    return 1;
}
コード例 #18
0
ファイル: KTeamClient.cpp プロジェクト: viticm/pap2
int KTeamClient::LuaIsPlayerInTeam(Lua_State* L)
{
    BOOL            bResult     = false;
    int             nTopIndex   = 0;
    DWORD           dwPlayerID  = 0;
    KTEAM_MEMBER_INFO*   pMemberinfo = NULL;

    nTopIndex = Lua_GetTopIndex(L);
    KGLOG_PROCESS_ERROR(nTopIndex == 1);

    dwPlayerID = (DWORD)Lua_ValueToNumber(L, 1);

    pMemberinfo = GetMemberInfo(dwPlayerID);
    KG_PROCESS_ERROR(pMemberinfo);

    bResult = true;
Exit0:
    Lua_PushBoolean(L, bResult);
    return 1;
}
コード例 #19
0
ファイル: KScriptFuncList.cpp プロジェクト: viticm/pap2
int LuaDeleteGlobalMail(Lua_State* L)
{
    BOOL        bResult     = false;
    BOOL        bRetCode    = false;
    int         nTopIndex   = 0;
    DWORD       dwMailID    = 0;

    nTopIndex = Lua_GetTopIndex(L);
    KGLOG_PROCESS_ERROR(nTopIndex == 1);

    dwMailID = (DWORD)Lua_ValueToNumber(L, 1);

    bRetCode = g_pSO3GameCenter->m_MailManager.DeleteGlobalMail(dwMailID);
    KG_PROCESS_ERROR(bRetCode);

    bResult = true;
Exit0:
    Lua_PushBoolean(L, bResult);
    return 1;
}
コード例 #20
0
int KHero::LuaPassBall(Lua_State* L)
{
    BOOL    bResult     = false;
    BOOL    bRetCode    = false;
    KHero*  pReceiver   = NULL;

    bRetCode = HasFollowerWithStateAndType(mosToken, sotBall);
    KG_PROCESS_ERROR(bRetCode);

    pReceiver = GetOneTeammate();
    KG_PROCESS_ERROR(pReceiver);

    bRetCode = PassBallTo(pReceiver, false);
    KG_PROCESS_ERROR(bRetCode);

    bResult = true;
Exit0:
    Lua_PushBoolean(L, bResult);
    return 1;
}
コード例 #21
0
int KScene::LuaRemoveTimer(Lua_State* L)
{
    BOOL    bResult        = false;
    BOOL    bRetCode       = false;
    int     nParamCount    = 0;
    DWORD   dwTimerID      = 0;

    nParamCount = Lua_GetTopIndex(L);
    KGLOG_PROCESS_ERROR(nParamCount == 1);

    dwTimerID = (DWORD)Lua_ValueToNumber(L, 1);

    bRetCode = m_ScriptTimerList.RemoveTimer(dwTimerID);
    KG_PROCESS_ERROR(bRetCode);

    bResult = true;
Exit0:
    Lua_PushBoolean(L, bResult);
    return 1;
}
コード例 #22
0
int KHero::LuaShootBall(Lua_State* L)
{
    BOOL    bResult                 = false;
    BOOL    bRetCode                = false;
    DWORD   dwInterferenceHeroID    = ERROR_ID;
    int     nAimLoop                = 0;
    
    bRetCode = HasFollowerWithStateAndType(mosToken, sotBall);
    KGLOG_PROCESS_ERROR(bRetCode);

    dwInterferenceHeroID = GetInterferenceID();
    nAimLoop = m_nVirtualFrame - m_nLastAimTime;

    bRetCode = NormalShootBall(nAimLoop, dwInterferenceHeroID);
    KGLOG_PROCESS_ERROR(bRetCode);

    bResult = true;
Exit0:
    Lua_PushBoolean(L, bResult);
    return 1;
}
コード例 #23
0
int KHero::LuaSetAIMode(Lua_State* L)
{
    BOOL            bResult     = false;
    BOOL            bRetCode    = false;
    BOOL            bAIMode     = false;
    int             nTopIndex   = Lua_GetTopIndex(L);

    KGLOG_PROCESS_ERROR(nTopIndex == 1);

    bAIMode  = (BOOL)Lua_ValueToNumber(L, 1);

    if (bAIMode)
        TurnOnAI();
    else
        TurnOffAI();

    bResult = true;
Exit0:
    Lua_PushBoolean(L, bResult);
    return 1;
}
コード例 #24
0
int KScene::LuaSetBattleTemplate(Lua_State* L)
{
    BOOL bResult 	        = false;
    BOOL bRetCode	        = false;
    int	 nTopIndex	        = 0;
    int  nBattleTemplateID  = 0;

    nTopIndex = Lua_GetTopIndex(L);
    KGLOG_PROCESS_ERROR(nTopIndex == 1);

    nBattleTemplateID = (DWORD)Lua_ValueToNumber(L, 1);

    m_Battle.ApplyTemplate(nBattleTemplateID);

    g_PlayerServer.DoSetBattleTemplate(this);

    bResult = true;
Exit0:
    Lua_PushBoolean(L, bResult);
    return 1;
}
コード例 #25
0
ファイル: KTeamClient.cpp プロジェクト: viticm/pap2
int KTeamClient::LuaCanSetTeamDistributeMan(Lua_State* L)
{
    BOOL        bResult         = false;
    BOOL        bRetCode        = false;
    KPlayer*    pClientPlayer   = NULL;

    pClientPlayer = g_pSO3World->m_PlayerSet.GetObj(g_pSO3World->m_dwClientPlayerID);
    KGLOG_PROCESS_ERROR(pClientPlayer);

    KGLOG_PROCESS_ERROR(m_dwTeamID != ERROR_ID);

    bRetCode = (
                   pClientPlayer->m_dwID == m_dwAuthority[tatDistribute] ||
                   pClientPlayer->m_dwID == m_dwAuthority[tatLeader]
               );
    KG_PROCESS_ERROR(bRetCode);

    bResult = true;
Exit0:
    Lua_PushBoolean(L, bResult);
    return 1;
}
コード例 #26
0
ファイル: KTeamClient.cpp プロジェクト: viticm/pap2
int KTeamClient::LuaGetClientTeamMemberOnlineFlag(Lua_State* L)
{
    int             nResult     = 0;
    int             nRetCode    = 0;
    DWORD           dwMemberID  = 0;
    KTEAM_MEMBER_INFO*   pMemberInfo = NULL;

    nRetCode = Lua_GetTopIndex(L);
    KGLOG_PROCESS_ERROR(nRetCode == 1);

    dwMemberID = (DWORD)Lua_ValueToNumber(L, 1);

    KG_PROCESS_ERROR(m_dwTeamID != ERROR_ID);

    pMemberInfo = GetMemberInfo(dwMemberID);
    KGLOG_PROCESS_ERROR(pMemberInfo);

    Lua_PushBoolean(L, pMemberInfo->bOnlineFlag);

    nResult = 1;
Exit0:
    return nResult;
}
コード例 #27
0
int KHero::LuaAutoMove(Lua_State* L)
{
	BOOL bResult 	= false;
	BOOL bRetCode	= false;
	int	 nTopIndex	= 0;
    BOOL bWalk = false;
    int nAroundX = 0;
    int nAroundY = 0;
    int nDestX = 0;
    int nDestY = 0;

	nTopIndex = Lua_GetTopIndex(L);
	KGLOG_PROCESS_ERROR(nTopIndex == 5);

    bWalk  = (int)Lua_ValueToNumber(L, 1);
    nAroundX = (int)Lua_ValueToNumber(L, 2);
    nAroundY = (int)Lua_ValueToNumber(L, 3);
    nDestX = (int)Lua_ValueToNumber(L, 4);
    nDestY = (int)Lua_ValueToNumber(L, 5);

    m_AIData.eTargetType = KTARGET_POSITION;
    m_AIData.nTargetX = nDestX;
    m_AIData.nTargetY = nDestY;
    m_AIData.nTargetZ = 0;

    bRetCode = UpdateAutoMoveParam(nAroundX, nAroundY, bWalk);
    KGLOG_PROCESS_ERROR(bRetCode);

    bRetCode = DirectlyMoveToDest();
    KGLOG_PROCESS_ERROR(bRetCode);

	bResult = true;
Exit0:
	Lua_PushBoolean(L, bResult);
	return 1;
}
コード例 #28
0
ファイル: KTeamClient.cpp プロジェクト: viticm/pap2
int KTeamClient::LuaSetTeamMark(Lua_State* L)
{
    BOOL        bResult    = false;
    int         nTopIndex  = 0;
    int         nMarkType  = 0;
    DWORD       dwTargetID = 0;

    nTopIndex = Lua_GetTopIndex(L);
    KGLOG_PROCESS_ERROR(nTopIndex == 2);

    nMarkType  = (int)Lua_ValueToNumber(L, 1);
    dwTargetID = (DWORD)Lua_ValueToNumber(L, 2);

    KGLOG_PROCESS_ERROR(nMarkType >= 0 && nMarkType <= PARTY_MARK_COUNT);

    KG_PROCESS_ERROR(m_dwTeamID != ERROR_ID);

    g_PlayerClient.DoTeamSetMarkRequest(nMarkType, dwTargetID);

    bResult = true;
Exit0:
    Lua_PushBoolean(L, bResult);
    return 1;
}
コード例 #29
0
int KHero::LuaIsNpc(Lua_State* L)
{
    BOOL bResult = IsNpc();
    Lua_PushBoolean(L, bResult);
    return 1;
}
コード例 #30
0
ファイル: kLoginFuncList.cpp プロジェクト: 1suming/pap2
 int LuaGetChargeFlag(Lua_State* L)
 {
     Lua_PushBoolean(L, g_GatewayClient.m_bChargeFlag);
     return 1;
 }