From 8e4a3f194606345d7aade40aef09605b71e3a017 Mon Sep 17 00:00:00 2001 From: Christoph Oelckers Date: Sun, 11 Sep 2022 23:05:42 +0200 Subject: [PATCH] - floatified position in RANDOMSCRAP --- source/games/duke/src/actors.cpp | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/source/games/duke/src/actors.cpp b/source/games/duke/src/actors.cpp index 678100dcf..170448702 100644 --- a/source/games/duke/src/actors.cpp +++ b/source/games/duke/src/actors.cpp @@ -59,10 +59,14 @@ int adjustfall(DDukeActor* s, int c); void RANDOMSCRAP(DDukeActor* origin) { - int r1 = krand(), r2 = krand(), r3 = krand(), r4 = krand(), r5 = krand(), r6 = krand(), r7 = krand(); + int r1 = krand(), r2 = krand(), r3 = krand(), r4 = krand(); + DVector3 offset; + offset.X = krandf(16) - 8; + offset.Y = krandf(16) - 8; + offset.Z = krandf(16) - 8; + int v = isRR() ? 16 : 48; - EGS(origin->sector(), - origin->int_pos().X + (r7 & 255) - 128, origin->int_pos().Y + (r6 & 255) - 128, origin->int_pos().Z - (8 << 8) - (r5 & 8191), + CreateActor(origin->sector(), origin->spr.pos + offset, TILE_SCRAP6 + (r4 & 15), -8, v, v, r3 & 2047, (r2 & 63) + 64, -512 - (r1 & 2047), origin, 5); }