This is a crazy work-around, and I'm not sure if there is a better way, but you could probably do something like this:
PHP Code:
//#CLIENTSIDE
function onCreated() {
onTimeout();
}
function onTimeout() {
for (temp.p: projectiles) {
if (tiles[temp.p.x + vecx(temp.p.params[0]),
temp.p.y + vecy(temp.p.params[0])] == 3271) {
tiles[temp.p.x + vecx(temp.p.params[0]),
temp.p.y + vecy(temp.p.params[0])] = 0;
updateboard(temp.p.x, temp.p.y, 2, 2);
}
if (tiles[temp.p.x + vecx((temp.p.params[0] + 2) [PERCENT] 4),
temp.p.y + vecy((temp.p.params[0] + 2) [PERCENT] 4)] == 0) {
tiles[temp.p.x + vecx((temp.p.params[0] + 2) [PERCENT] 4),
temp.p.y + vecy((temp.p.params[0] + 2) [PERCENT] 4)] = 3271;
updateboard(temp.p.x, temp.p.y, 2, 2);
}
}
setTimer(0.05);
}
But it's probably pretty intensive, could probably be optimized.
All that's doing is finding projectiles in the level and if they are about to hit tile "3271", replace it with tile "0", and then if they just passed tile "0" replace it with "3271".
If you wanted to use this technique, of course, you'd have to apply a small flag to the projectile somehow or something to make sure you're not replacing a correctly placed tile 0 with 3271 on accident.
Note: 3271 is just a random tile. This also requires that your shootparams[0] are set to the direction the player was facing when he fired the projectile.