Fixes #3215: Ice isn't slippery for rocks
Since the ice floor wasn't being recognized as ice, specially on the hills on level "Tip of the Ice", the floor didn't have the slippery feature. I changed the tile attributes to address this problem and added a condition on the rock logic to include a slippery property on ice. Now tux can throw a rock to hills and it will slide back down due to the slippery property.
Video: https://youtube.com/shorts/B_z0Fx5yYJc?feature=share
Closes #3215
@tobbi could you check this, please?
It looks like the behaviour is almost the same, both in master and this PR. So what was actually fixed?
- non-ice solid flat tiles - In both versions, the rock stops instantly. That is correct.
- solid flat ice - In both versions, the rock slides for approx. 1s and then it stops. Wasn't that supposed to be different?
- solid ice slope - In master, the rock stops instantly, unless it is given an initial speed. In this PR, the rock slowly slides down and jitters occasionally.
- unisolid flat ice - In both versions, the rock just stops.
- unisolid ice slope - In both versions, the rock just stops.
- non-ice solid tiles with unisolid flat ice overlay - same as case 3
- non-ice solid tiles with unisolid ice slope overlay - same as case 4
@Hypernoot @Rusty-Box @tobbi could you check this last version?
Solid Flat Ice: I decreased the friction Solid Ice Slope: Now there is a minimum force to throw the rock Unisolid flat ice and slope: I updated that part
@Hypernoot I thought I fixed the problems! Could you help me identify the right tiles? On the code I can't identify them by their type.
@Hypernoot the non-ice friction value changed by mistake! I will fix that! I had changed the GROUND_FRICTION constant and then also changed that value and forgot to change!