亚洲乱码一卡二卡四卡乱码新区_亚洲乱码中文字幕小综合_亚洲人成电影在线播放_亚洲性色AV一区二区三区_亚洲一区二区三区影院_亚洲中文字幕久久精品无码A_亚洲中文字幕无码专区_伊人热热久久原色播放WWW_在线观看AV永久免费_最新欧洲大片免费在线,欧美日韩成人三级免费看,久久黄色网址,欧美激情内射喷水高潮

首頁
社區(qū)
課程
招聘
c語言求助,請各位老師解答
dmxayjn 2022-1-18 1259

if(pItemBase &&(((FLOAT)g_pPlayer->GetMaxHitPoint() / g_pPlayer->GetHitPoint() ) > 2.0F || pItemBase->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint()) )
{

1
2
3
4
5
        if( g_pPlayer->m_cooltimeMgr.CanUse( g_pPlayer->m_cooltimeMgr.GetGroup(pItemBase->GetProp() )))
        {
                g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, pItemBase->m_dwObjId ), NULL_ID, pItemBase->GetProp()->dwParts );
        }
}

這個代碼是自動吃藥的代碼,,g_pPlayer->GetMaxHitPoint() / g_pPlayer->GetHitPoint() ) > 2.0F這一句是計算了當(dāng)前HP的 50%嗎,?如果是的話,,怎么可以改成70%,。,。

 

易語言的話,,我知道怎么實現(xiàn),,,對C語言還不是很明白,。。請求大佬支個招,,,,有些能看懂,,但是不知道怎么去改,。,。,。

收藏
2條回答
AlphaYang 2022-1-19 2022-1-19編輯

很好解決,,首先理解代碼邏輯

g_pPlayer->GetMaxHitPoint() / g_pPlayer->GetHitPoint() ) > 2.0F 是指如果最大血量在當(dāng)前血量的兩倍以上,,也就是如果血量小于50%,執(zhí)行操作,。按照你的要求,小于70%就執(zhí)行的話,,可以改成g_pPlayer->GetHitPoint() ) < g_pPlayer->GetMaxHitPoint() *0.7 意思是當(dāng)前血量在最大血量的70%以下,,加上If條件句就可以實現(xiàn)你的功能啦~

回復(fù)
dmxayjn: 好的,謝謝大佬解答,,我目前把  2.0F  改成  了  1.74F  就解決了,。。
回復(fù) 2022-1-19
mb_nwrlvgzr 2022-2-15

稍微試試就能知道答案了

回復(fù)