From b265085392208beb94c8ffcbfeab69454aa4236b Mon Sep 17 00:00:00 2001 From: Zeno Rogue Date: Tue, 17 Oct 2017 13:13:36 +0200 Subject: [PATCH] Orb of Fish has a tail now --- graph.cpp | 11 +++++++++-- hyper.h | 1 + 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/graph.cpp b/graph.cpp index 7bc86c2f..59123d17 100644 --- a/graph.cpp +++ b/graph.cpp @@ -632,7 +632,8 @@ bool drawItemType(eItem it, cell *c, const transmatrix& V, int icol, int ticks, int pr = PPR_ITEM; bool inice = c && c->wall == waIcewall; if(inice) pr = PPR_HIDDEN; - queuepolyat(V, shDisk, darkena(icol, 0, inice ? 0x80 : hidden ? 0x20 : 0xC0), pr); + + int icol1 = icol; if(it == itOrbFire) icol = firecolor(200); if(it == itOrbFriend || it == itOrbDiscord) icol = 0xC0C0C0; if(it == itOrbFrog) icol = 0xFF0000; @@ -641,6 +642,12 @@ bool drawItemType(eItem it, cell *c, const transmatrix& V, int icol, int ticks, if(it == itOrbAir) icol = 0xFFFFFF; if(it == itOrbUndeath) icol = minf[moFriendlyGhost].color; if(it == itOrbRecall) icol = 0x101010; + int col = darkena(icol, 0, int(0x80 + 0x70 * sin(ticks / 300.))); + + if(it == itOrbFish) + queuepolyat(V * spin(ticks / 1500.), shFishTail, col, PPR_ITEM_BELOW); + + queuepolyat(V, shDisk, darkena(icol1, 0, inice ? 0x80 : hidden ? 0x20 : 0xC0), pr); hpcshape& sh = it == itOrbLove ? shLoveRing : isRangedOrb(it) ? shTargetRing : @@ -650,7 +657,7 @@ bool drawItemType(eItem it, cell *c, const transmatrix& V, int icol, int ticks, isDirectionalOrb(it) ? shSpearRing : it == itOrb37 ? shHeptaRing : shRing; - queuepolyat(V * spin(ticks / 1500.), sh, darkena(icol, 0, int(0x80 + 0x70 * sin(ticks / 300.))), pr); + queuepolyat(V * spin(ticks / 1500.), sh, col, pr); } else if(it) return true; diff --git a/hyper.h b/hyper.h index 9a001a48..1b70e4cf 100644 --- a/hyper.h +++ b/hyper.h @@ -944,6 +944,7 @@ enum PPR { PPR_REDWALLm2, PPR_REDWALLs2, PPR_REDWALLp2, PPR_REDWALLt2, PPR_REDWALLm3, PPR_REDWALLs3, PPR_REDWALLp3, PPR_REDWALLt3, PPR_HEPTAMARK, + PPR_ITEM_BELOW, PPR_ITEM, PPR_ITEMa, PPR_ITEMb, PPR_BIGSTATUE,