From: terencehill Date: Mon, 13 Mar 2017 00:14:20 +0000 (+0100) Subject: Show hardwired waypoint links in the waypoint editor X-Git-Tag: xonotic-v0.8.2~65 X-Git-Url: http://de.git.xonotic.org/?p=xonotic%2Fxonotic-data.pk3dir.git;a=commitdiff_plain;h=9a53f42d42fbc1f90b3feebb0cf9dc6e4dfd6332 Show hardwired waypoint links in the waypoint editor --- diff --git a/qcsrc/server/bot/default/waypoints.qc b/qcsrc/server/bot/default/waypoints.qc index 718f8a2fb0..d93b76c22a 100644 --- a/qcsrc/server/bot/default/waypoints.qc +++ b/qcsrc/server/bot/default/waypoints.qc @@ -775,6 +775,17 @@ entity waypoint_spawnpersonal(entity this, vector position) return w; } +void waypoint_showlink(entity wp1, entity wp2, int display_type) +{ + if (!(wp1 && wp2)) + return; + + if (wp1.wphardwired && wp2.wphardwired) + te_beam(NULL, wp1.origin, wp2.origin); + else if (display_type == 1) + te_lightning2(NULL, wp1.origin, wp2.origin); +} + void botframe_showwaypointlinks() { if (time < botframe_waypointeditorlightningtime) @@ -782,48 +793,53 @@ void botframe_showwaypointlinks() botframe_waypointeditorlightningtime = time + 0.5; FOREACH_CLIENT(IS_PLAYER(it) && !it.isbot, { - if(IS_ONGROUND(it) || it.waterlevel > WATERLEVEL_NONE) + int display_type = 0; + entity head = navigation_findnearestwaypoint(it, false); + if (IS_ONGROUND(it) || it.waterlevel > WATERLEVEL_NONE) + display_type = 1; // default + else if(head && (head.wphardwired)) + display_type = 2; // only hardwired + + if (display_type) { //navigation_testtracewalk = true; - entity head = navigation_findnearestwaypoint(it, false); - // print("currently selected WP is ", etos(head), "\n"); + //print("currently selected WP is ", etos(head), "\n"); //navigation_testtracewalk = false; if (head) { - entity w; - w = head ;if (w) te_lightning2(NULL, w.origin, it.origin); - w = head.wp00;if (w) te_lightning2(NULL, w.origin, head.origin); - w = head.wp01;if (w) te_lightning2(NULL, w.origin, head.origin); - w = head.wp02;if (w) te_lightning2(NULL, w.origin, head.origin); - w = head.wp03;if (w) te_lightning2(NULL, w.origin, head.origin); - w = head.wp04;if (w) te_lightning2(NULL, w.origin, head.origin); - w = head.wp05;if (w) te_lightning2(NULL, w.origin, head.origin); - w = head.wp06;if (w) te_lightning2(NULL, w.origin, head.origin); - w = head.wp07;if (w) te_lightning2(NULL, w.origin, head.origin); - w = head.wp08;if (w) te_lightning2(NULL, w.origin, head.origin); - w = head.wp09;if (w) te_lightning2(NULL, w.origin, head.origin); - w = head.wp10;if (w) te_lightning2(NULL, w.origin, head.origin); - w = head.wp11;if (w) te_lightning2(NULL, w.origin, head.origin); - w = head.wp12;if (w) te_lightning2(NULL, w.origin, head.origin); - w = head.wp13;if (w) te_lightning2(NULL, w.origin, head.origin); - w = head.wp14;if (w) te_lightning2(NULL, w.origin, head.origin); - w = head.wp15;if (w) te_lightning2(NULL, w.origin, head.origin); - w = head.wp16;if (w) te_lightning2(NULL, w.origin, head.origin); - w = head.wp17;if (w) te_lightning2(NULL, w.origin, head.origin); - w = head.wp18;if (w) te_lightning2(NULL, w.origin, head.origin); - w = head.wp19;if (w) te_lightning2(NULL, w.origin, head.origin); - w = head.wp20;if (w) te_lightning2(NULL, w.origin, head.origin); - w = head.wp21;if (w) te_lightning2(NULL, w.origin, head.origin); - w = head.wp22;if (w) te_lightning2(NULL, w.origin, head.origin); - w = head.wp23;if (w) te_lightning2(NULL, w.origin, head.origin); - w = head.wp24;if (w) te_lightning2(NULL, w.origin, head.origin); - w = head.wp25;if (w) te_lightning2(NULL, w.origin, head.origin); - w = head.wp26;if (w) te_lightning2(NULL, w.origin, head.origin); - w = head.wp27;if (w) te_lightning2(NULL, w.origin, head.origin); - w = head.wp28;if (w) te_lightning2(NULL, w.origin, head.origin); - w = head.wp29;if (w) te_lightning2(NULL, w.origin, head.origin); - w = head.wp30;if (w) te_lightning2(NULL, w.origin, head.origin); - w = head.wp31;if (w) te_lightning2(NULL, w.origin, head.origin); + te_lightning2(NULL, head.origin, it.origin); + waypoint_showlink(head.wp00, head, display_type); + waypoint_showlink(head.wp01, head, display_type); + waypoint_showlink(head.wp02, head, display_type); + waypoint_showlink(head.wp03, head, display_type); + waypoint_showlink(head.wp04, head, display_type); + waypoint_showlink(head.wp05, head, display_type); + waypoint_showlink(head.wp06, head, display_type); + waypoint_showlink(head.wp07, head, display_type); + waypoint_showlink(head.wp08, head, display_type); + waypoint_showlink(head.wp09, head, display_type); + waypoint_showlink(head.wp10, head, display_type); + waypoint_showlink(head.wp11, head, display_type); + waypoint_showlink(head.wp12, head, display_type); + waypoint_showlink(head.wp13, head, display_type); + waypoint_showlink(head.wp14, head, display_type); + waypoint_showlink(head.wp15, head, display_type); + waypoint_showlink(head.wp16, head, display_type); + waypoint_showlink(head.wp17, head, display_type); + waypoint_showlink(head.wp18, head, display_type); + waypoint_showlink(head.wp19, head, display_type); + waypoint_showlink(head.wp20, head, display_type); + waypoint_showlink(head.wp21, head, display_type); + waypoint_showlink(head.wp22, head, display_type); + waypoint_showlink(head.wp23, head, display_type); + waypoint_showlink(head.wp24, head, display_type); + waypoint_showlink(head.wp25, head, display_type); + waypoint_showlink(head.wp26, head, display_type); + waypoint_showlink(head.wp27, head, display_type); + waypoint_showlink(head.wp28, head, display_type); + waypoint_showlink(head.wp29, head, display_type); + waypoint_showlink(head.wp30, head, display_type); + waypoint_showlink(head.wp31, head, display_type); } } });