diff --git a/config/menus_edit.cfg b/config/menus_edit.cfg index 75fe7036..39b1bf21 100644 --- a/config/menus_edit.cfg +++ b/config/menus_edit.cfg @@ -142,7 +142,6 @@ menuitem (_ [Print entity stats]) entstats menuitem (_ [Select the next closest entity]) nextclosestent menuitem (_ [Copy the current closest entity]) copyent menuitem (_ [Paste a previously copied entity]) pasteent -menuitemcheckbox (_ [Show mapmodel clippings: ]) "$showmodelclipping" [ showmodelclipping $arg1 ] menuitemslider (_ [Select only these entities: ]) 0 15 "$_closestenttypestatus" 1 [All Light Playerstart Pistol Ammobox Grenades Health Armour Akimbo Mapmodel Ladder CTF-flag Sound Clip Helmet PlayerClip] [ _closestentslider $arg1 ] // Map config operations @@ -281,6 +280,8 @@ showedBAKinfo = 0 newmenu [Editing settings] menuitemslider (_ [Grid/Selection style: ]) 0 1 "$oldselstyle" 1 [triangles "squares (default)"] [ oldselstyle $arg1 ] +menuitemcheckbox (_ [Show mapmodel clippings: ]) "$showmodelclipping" [ showmodelclipping $arg1 ] +menuitemcheckbox (_ [Show all playerstarts: ]) "$showplayerstarts" [ showplayerstarts $arg1 ] menuitemslider (_ [Fly speeds multiplier: ]) 1 5 "$flyspeed" 1 [] [ flyspeed $arg1 ] menuitemcheckbox (_ [Enable auto save map: ]) "$autosavemap" [ autosavemap = $arg1 ] menuitemslider (_ [Time between auto saves (in minutes): ]) 2 60 "(div $timeBetAutoSaves 60000)" 1 [] [ timeBetAutoSaves = (* $arg1 60000) ] diff --git a/packages/models/playermodels/ffaspawn.jpg b/packages/models/playermodels/ffaspawn.jpg new file mode 100644 index 00000000..a0008357 Binary files /dev/null and b/packages/models/playermodels/ffaspawn.jpg differ diff --git a/source/src/entities.cpp b/source/src/entities.cpp index 7a9c212a..ab80264e 100644 --- a/source/src/entities.cpp +++ b/source/src/entities.cpp @@ -4,6 +4,7 @@ VAR(showclips, 0, 1, 1); VAR(showmodelclipping, 0, 0, 1); +VAR(showplayerstarts, 0, 0, 1); vector ents; vector eh_ents; // edithide entities @@ -234,6 +235,19 @@ void renderentities() renderclip(ce); } } + else if(e.type == PLAYERSTART && showplayerstarts) + { + vec o(e.x, e.y, 0); + if(!OUTBORD(e.x, e.y)) o.z += S(e.x, e.y)->floor; + const char *skin; + switch(e.attr2) + { + case 0: skin = "packages/models/playermodels/CLA/red.jpg"; break; + case 1: skin = "packages/models/playermodels/RVSF/blue.jpg"; break; + default: skin = "packages/models/playermodels/ffaspawn.jpg"; break; + } + rendermodel("playermodels", ANIM_IDLE, -(int)textureload(skin)->id, 1.5f, o, 0, e.attr1 / ENTSCALE10 + 90, 0); + } } if(editmode && i==closest && !stenciling)//closest see above {