Compare commits

..

No commits in common. "7eac32bbb4a1d62e6411c0cbaf3505e910f856e3" and "247556928f3de34960230fe9097d0d66896dacd3" have entirely different histories.

4 changed files with 7 additions and 8 deletions

View file

@ -295,6 +295,7 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
#if !defined(USE_INTERNAL_BULLET) && !defined(USE_INTERNAL_ODE) && !defined(MODELFMT_GLTF) && !defined(STATIC_EZHUD) && !defined(STATIC_OPENSSL) && !defined(STATIC_Q3) #if !defined(USE_INTERNAL_BULLET) && !defined(USE_INTERNAL_ODE) && !defined(MODELFMT_GLTF) && !defined(STATIC_EZHUD) && !defined(STATIC_OPENSSL) && !defined(STATIC_Q3)
#undef PLUGINS //pointless #undef PLUGINS //pointless
#endif #endif
#undef VM_Q1 //no dlls
#undef MAP_PROC //meh #undef MAP_PROC //meh
// #undef HALFLIFEMODELS //blurgh // #undef HALFLIFEMODELS //blurgh
#undef SUPPORT_ICE //requires udp, so not usable. webrtc could be used instead, but that logic is out of our hands. #undef SUPPORT_ICE //requires udp, so not usable. webrtc could be used instead, but that logic is out of our hands.

View file

@ -2070,7 +2070,7 @@ static qintptr_t QVM_pointerstat (void *offset, quintptr_t mask, const qintptr_t
static qintptr_t QVM_SetSendNeeded(void *offset, quintptr_t mask, const qintptr_t *arg) static qintptr_t QVM_SetSendNeeded(void *offset, quintptr_t mask, const qintptr_t *arg)
{ {
unsigned int subject = VM_LONG(arg[0]); unsigned int subject = VM_LONG(arg[0]);
quint64_t fl = arg[1] << SENDFLAGS_SHIFT; quint64_t fl = arg[1];
unsigned int to = VM_LONG(arg[2]); unsigned int to = VM_LONG(arg[2]);
if (!to) if (!to)
{ //broadcast { //broadcast
@ -2852,9 +2852,9 @@ void Q1QVM_StartFrame(qboolean botsarespecialsnowflakes)
VM_Call(q1qvm, GAME_START_FRAME, (qintptr_t)(sv.time*1000), botsarespecialsnowflakes, 0, 0); VM_Call(q1qvm, GAME_START_FRAME, (qintptr_t)(sv.time*1000), botsarespecialsnowflakes, 0, 0);
} }
qboolean Q1QVM_SendEntity(quint64_t sendflags) void Q1QVM_SendEntity(quint64_t sendflags)
{ {
return VM_Call(q1qvm, GAME_EDICT_CSQCSEND, sendflags, 0, 0, 0) > 0; VM_Call(q1qvm, GAME_EDICT_CSQCSEND, sendflags, 0, 0, 0);
} }
void Q1QVM_Blocked(void) void Q1QVM_Blocked(void)

View file

@ -154,7 +154,7 @@ void Q1QVM_RunPlayerThink(void);
void Q1QVM_PostThink(void); void Q1QVM_PostThink(void);
void Q1QVM_StartFrame(qboolean botsarespecialsnowflakes); void Q1QVM_StartFrame(qboolean botsarespecialsnowflakes);
void Q1QVM_Blocked(void); void Q1QVM_Blocked(void);
qboolean Q1QVM_SendEntity(quint64_t sendflags); void Q1QVM_SendEntity(quint64_t sendflags);
void Q1QVM_SetNewParms(void); void Q1QVM_SetNewParms(void);
void Q1QVM_SetChangeParms(void); void Q1QVM_SetChangeParms(void);
qboolean Q1QVM_ClientCommand(void); qboolean Q1QVM_ClientCommand(void);

View file

@ -335,7 +335,6 @@ void SV_EmitCSQCUpdate(client_t *client, sizebuf_t *msg, qbyte svcnumber)
for (en = 0, entnum = 0; en < csqcnuments; en++, entnum++) for (en = 0, entnum = 0; en < csqcnuments; en++, entnum++)
{ {
int mod_result = 0;
ent = csqcent[en]; ent = csqcent[en];
//add any entity removes on ents leading up to this entity //add any entity removes on ents leading up to this entity
@ -401,7 +400,7 @@ void SV_EmitCSQCUpdate(client_t *client, sizebuf_t *msg, qbyte svcnumber)
if (svs.gametype == GT_Q1QVM) if (svs.gametype == GT_Q1QVM)
{ {
pr_global_struct->other = viewerent; pr_global_struct->other = viewerent;
mod_result = Q1QVM_SendEntity(bits >> SENDFLAGS_SHIFT); Q1QVM_SendEntity(bits);
} }
else else
#endif #endif
@ -412,10 +411,9 @@ void SV_EmitCSQCUpdate(client_t *client, sizebuf_t *msg, qbyte svcnumber)
G_FLOAT(OFS_PARM1+1) = (int)((bits>>(SENDFLAGS_SHIFT+24)) & 0xffffff); G_FLOAT(OFS_PARM1+1) = (int)((bits>>(SENDFLAGS_SHIFT+24)) & 0xffffff);
G_FLOAT(OFS_PARM1+2) = (int)((bits>>(SENDFLAGS_SHIFT+48)) & 0xffffff); G_FLOAT(OFS_PARM1+2) = (int)((bits>>(SENDFLAGS_SHIFT+48)) & 0xffffff);
PR_ExecuteProgram(svprogfuncs, ent->xv->SendEntity); PR_ExecuteProgram(svprogfuncs, ent->xv->SendEntity);
mod_result = G_INT(OFS_RETURN);
} }
if (mod_result) //0 means not to tell the client about it. if (G_INT(OFS_RETURN)) //0 means not to tell the client about it.
{ {
//FIXME: don't overflow MAX_DATAGRAM... unless its too big anyway... //FIXME: don't overflow MAX_DATAGRAM... unless its too big anyway...
if (msg->cursize + csqcmsgbuffer.cursize+5 >= msg->maxsize) if (msg->cursize + csqcmsgbuffer.cursize+5 >= msg->maxsize)