void SetAssist(PBYTE address) { if ((DWORD)address == -1) return; bool bexpectTarget = false; if (address) { if (DWORD Assistee = *(DWORD*)address) { if (PSPAWNINFO pSpawn = (PSPAWNINFO)GetSpawnByID(Assistee)) { bexpectTarget = true; gbAssistComplete = 1; //WriteChatf("We can expect a target packet because assist retuned %s",pSpawn->Name); } } } else { InterlockedIncrement((volatile unsigned long *)gbAssistComplete); } if (!bexpectTarget) { //WriteChatColor("We can NOT expect a target packet because assist was 0"); gbAssistComplete = 2; } }
// /ranged int CMD_do_ranged(int argc, char *argv[]) { EQPlayer *pRangedTarget=pTarget; if (argc>1) { pRangedTarget=GetSpawnByID(atoi(argv[1])); if (!pRangedTarget) { printf("Invalid spawn ID. Use /ranged with no parameters, or with a spawn ID"); return 0; } } if (!pRangedTarget) { printf("No target for ranged attack"); return 0; } if (gbRangedAttackReady) { pLocalPlayer->DoAttack(0x0B,0,pRangedTarget); gbRangedAttackReady=0; } return 0; }