Search in sources :

Example 1 with RSCombatInfoList

use of net.runelite.rs.api.RSCombatInfoList in project runelite by runelite.

the class RSActorMixin method getHealth.

@Inject
@Override
public int getHealth() {
    RSCombatInfoList combatInfoList = getCombatInfoList();
    if (combatInfoList != null) {
        RSNode node = combatInfoList.getNode();
        RSNode next = node.getNext();
        if (next instanceof RSCombatInfoListHolder) {
            RSCombatInfoListHolder combatInfoListWrapper = (RSCombatInfoListHolder) next;
            RSCombatInfo2 cf = combatInfoListWrapper.getCombatInfo2();
            return cf.getHealthScale();
        }
    }
    return -1;
}
Also used : RSCombatInfoList(net.runelite.rs.api.RSCombatInfoList) RSCombatInfoListHolder(net.runelite.rs.api.RSCombatInfoListHolder) RSNode(net.runelite.rs.api.RSNode) RSCombatInfo2(net.runelite.rs.api.RSCombatInfo2) Inject(net.runelite.api.mixins.Inject)

Example 2 with RSCombatInfoList

use of net.runelite.rs.api.RSCombatInfoList in project runelite by runelite.

the class RSActorMixin method getHealthRatio.

@Inject
@Override
public int getHealthRatio() {
    RSCombatInfoList combatInfoList = getCombatInfoList();
    if (combatInfoList != null) {
        RSNode node = combatInfoList.getNode();
        RSNode next = node.getNext();
        if (next instanceof RSCombatInfoListHolder) {
            RSCombatInfoListHolder combatInfoListWrapper = (RSCombatInfoListHolder) next;
            RSCombatInfoList combatInfoList1 = combatInfoListWrapper.getCombatInfo1();
            RSNode node2 = combatInfoList1.getNode();
            RSNode next2 = node2.getNext();
            if (next2 instanceof RSCombatInfo1) {
                RSCombatInfo1 combatInfo = (RSCombatInfo1) next2;
                return combatInfo.getHealthRatio();
            }
        }
    }
    return -1;
}
Also used : RSCombatInfoList(net.runelite.rs.api.RSCombatInfoList) RSCombatInfoListHolder(net.runelite.rs.api.RSCombatInfoListHolder) RSNode(net.runelite.rs.api.RSNode) RSCombatInfo1(net.runelite.rs.api.RSCombatInfo1) Inject(net.runelite.api.mixins.Inject)

Aggregations

Inject (net.runelite.api.mixins.Inject)2 RSCombatInfoList (net.runelite.rs.api.RSCombatInfoList)2 RSCombatInfoListHolder (net.runelite.rs.api.RSCombatInfoListHolder)2 RSNode (net.runelite.rs.api.RSNode)2 RSCombatInfo1 (net.runelite.rs.api.RSCombatInfo1)1 RSCombatInfo2 (net.runelite.rs.api.RSCombatInfo2)1