Skip to content

Instantly share code, notes, and snippets.

@T-Maxxx
Created August 16, 2016 17:23
Show Gist options
  • Save T-Maxxx/27be7d47c060018673849785a652b066 to your computer and use it in GitHub Desktop.
Save T-Maxxx/27be7d47c060018673849785a652b066 to your computer and use it in GitHub Desktop.
void SV_BotUserMove(client_t *client)
{
signed int clientnum;
usercmd_t ucmd;
int i;
if(!client->gentity)
return;
memset(&ucmd, 0, sizeof(ucmd));
clientnum = client - svs.clients;
playerState_t* ps = SV_GameClientNum(clientnum);
ucmd.weapon = *(byte*)&ps->weapon;
if ( level.clients[clientnum].sess.archiveTime == 0 )
{
ucmd.buttons = BotMovement[clientnum].buttons;
ucmd.forwardmove = BotMovement[clientnum].forwardMove;
ucmd.rightmove = BotMovement[clientnum].rightMove;
gentity_t *ent = VM_GetGEntityForNum(clientnum);
VectorCopy(ent->client->sess.cmd.angles, ucmd.angles);
if(BotMovement[clientnum].rotIterCount)
{
--BotMovement[clientnum].rotIterCount;
for(i = 0; i < 3; ++i)
{
ucmd.angles[i] += BotMovement[clientnum].rotFrac[i];
if(ucmd.angles[i] < 0)
ucmd.angles[i] = 0xFFFF + ucmd.angles[i];
else if(ucmd.angles[i] > 0xFFFF)
ucmd.angles[i] -= 0xFFFF;
}
}
//ucmd.angles[0] = (unsigned int)rand() % 0xFFFF;
}
client->deltaMessage = client->netchan.outgoingSequence - 1;
SV_ClientThink(client, &ucmd);
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment