From d8cee4866eea178939a1f37c26e1ad608db9ec5e Mon Sep 17 00:00:00 2001 From: Misa Date: Fri, 9 Oct 2020 15:35:50 -0700 Subject: [PATCH] Add entityclass::nocollisionat() This function will disable a block instead of removing it entirely, mimicking the previous `active` system of 2.2. --- desktop_version/src/Entity.cpp | 15 +++++++++++++++ desktop_version/src/Entity.h | 2 ++ 2 files changed, 17 insertions(+) diff --git a/desktop_version/src/Entity.cpp b/desktop_version/src/Entity.cpp index aaffa92b..08d66441 100644 --- a/desktop_version/src/Entity.cpp +++ b/desktop_version/src/Entity.cpp @@ -1081,6 +1081,21 @@ void entityclass::removeblockat( int x, int y ) } } +void entityclass::nocollisionat(int x, int y) +{ + for (size_t i = 0; i < blocks.size(); i++) + { + if (blocks[i].xp == x && blocks[i].yp == y) + { + blocks[i].wp = 0; + blocks[i].hp = 0; + + blocks[i].rect.w = blocks[i].wp; + blocks[i].rect.h = blocks[i].hp; + } + } +} + void entityclass::removetrigger( int t ) { for(size_t i=0; i