From 2cbee180a1e8e8fd08d9ecca82c86d8f689d1fc6 Mon Sep 17 00:00:00 2001 From: jacob1 Date: Thu, 29 Aug 2013 22:34:50 -0400 Subject: fix bug where PROP wouldn't set properties of particle id 0 diff --git a/src/simulation/Simulation.cpp b/src/simulation/Simulation.cpp index 6192356..f96fd3a 100644 --- a/src/simulation/Simulation.cpp +++ b/src/simulation/Simulation.cpp @@ -388,23 +388,23 @@ int Simulation::flood_prop_2(int x, int y, size_t propoffset, void * propvalue, } for (x=x1; x<=x2; x++) { - i = pmap[y][x]>>8; + i = pmap[y][x]; if (!i) - i = photons[y][x]>>8; + i = photons[y][x]; if (!i) continue; switch (proptype) { case StructProperty::Float: - *((float*)(((char*)&parts[i])+propoffset)) = *((float*)propvalue); + *((float*)(((char*)&parts[i>>8])+propoffset)) = *((float*)propvalue); break; case StructProperty::ParticleType: case StructProperty::Integer: - *((int*)(((char*)&parts[i])+propoffset)) = *((int*)propvalue); + *((int*)(((char*)&parts[i>>8])+propoffset)) = *((int*)propvalue); break; case StructProperty::UInteger: - *((unsigned int*)(((char*)&parts[i])+propoffset)) = *((unsigned int*)propvalue); + *((unsigned int*)(((char*)&parts[i>>8])+propoffset)) = *((unsigned int*)propvalue); break; default: -- cgit v0.9.2-21-gd62e