MCPcopy Create free account
hub / github.com/demoth/jake2 / ParseLightning

Method ParseLightning

client/src/main/java/jake2/client/CL_tent.java:523–568  ·  view source on GitHub ↗
(model_t model, sizebuf_t buffer)

Source from the content-addressed store, hash-verified

521 * ================= CL_ParseLightning =================
522 */
523 @Deprecated
524 static int ParseLightning(model_t model, sizebuf_t buffer) {
525 int srcEnt, destEnt;
526 beam_t[] b;
527 int i;
528
529 srcEnt = buffer.readShort();
530 destEnt = buffer.readShort();
531
532 buffer.readPos(start);
533 buffer.readPos(end);
534
535 // override any beam with the same source AND destination entities
536 b = cl_beams;
537 for (i = 0; i < MAX_BEAMS; i++)
538 if (b[i].entity == srcEnt && b[i].dest_entity == destEnt) {
539 // Com_Printf("%d: OVERRIDE %d . %d\n", cl.time, srcEnt,
540 // destEnt);
541 b[i].entity = srcEnt;
542 b[i].dest_entity = destEnt;
543 b[i].model = model;
544 b[i].endtime = ClientGlobals.cl.time + 200;
545 Math3D.VectorCopy(start, b[i].start);
546 Math3D.VectorCopy(end, b[i].end);
547 Math3D.VectorClear(b[i].offset);
548 return srcEnt;
549 }
550
551 // find a free beam
552 b = cl_beams;
553 for (i = 0; i < MAX_BEAMS; i++) {
554 if (b[i].model == null || b[i].endtime < ClientGlobals.cl.time) {
555 // Com_Printf("%d: NORMAL %d . %d\n", cl.time, srcEnt, destEnt);
556 b[i].entity = srcEnt;
557 b[i].dest_entity = destEnt;
558 b[i].model = model;
559 b[i].endtime = ClientGlobals.cl.time + 200;
560 Math3D.VectorCopy(start, b[i].start);
561 Math3D.VectorCopy(end, b[i].end);
562 Math3D.VectorClear(b[i].offset);
563 return srcEnt;
564 }
565 }
566 Com.Printf("beam list overflow!\n");
567 return srcEnt;
568 }
569
570 // stack variable
571 // start, end

Callers

nothing calls this directly

Calls 5

VectorCopyMethod · 0.95
VectorClearMethod · 0.95
PrintfMethod · 0.95
readShortMethod · 0.80
readPosMethod · 0.80

Tested by

no test coverage detected