• Our software update is now concluded. You will need to reset your password to log in. In order to do this, you will have to click "Log in" in the top right corner and then "Forgot your password?".
  • Welcome to PokéCommunity! Register now and join one of the best fan communities on the 'net to talk Pokémon and more! We are not affiliated with The Pokémon Company or Nintendo.

[Custom Feature Question] Rock wall Sliding Feature

44
Posts
6
Years
Hello everyone!
I am trying to develop a Wall sliding event that works mainly based on Ice sliding.
The concept is the following: If you are facing Down the wall (and if the rock wall permits it) you will slide down the wall till you touch the "grass". Here an image to show it. I will also Attach them at the bottom of the post.
F7ThoFq


The Event code used is:
tUrDFEU


The code underlying that I wrote in PField_Field is:
Spoiler:

The problem is that the code is based on PBTerrain.isRock?, that I created simply by:
Spoiler:

That condition is limiting. I would improve the script by changing it and setting a different IF statement that I can't find a way to define:

Code:
IF the tile the player is standing on while sliding is Passable
OR
IF the player is standing in a tile where there is an event, that has as Image a Tileset Tile that is itself Passable and with Priority==0

THEN the player stops sliding

The problem for the First Condition is that while the player is sliding, since I wrote the Event of Sliding in this way , the player has THROUGH ON to slide on Rocks that are normally Non-Passable. Therefore, I can't find a easy way to reconize something Passable or not when the player is Through On.

The problem with the second condition is similar and I also don't know how to recall the properties of the Tileset's Tile that the Stop Event has.

Would someone be that kind and gentle to give me a hand?
Thank you in advance for your attention :)
 

Attachments

  • RockslidingExample.png
    RockslidingExample.png
    60.3 KB · Views: 36
  • RockslidingEvent.PNG
    RockslidingEvent.PNG
    32.6 KB · Views: 20
Last edited:

WolfPP

Spriter/ Pixel Artist
1,309
Posts
5
Years
You need to add a new code inside 'PField_Field' script, into this code (make another 'elsif' below 'elsif PBTerrain.isIce?(currentTag) && !$PokemonGlobal.sliding'):
Spoiler:


If you are using Following Pokemon Script and want the pokemon be static (no animation) if you are sliding on the rock, find 'def update_stepping' inside Following Pokemon Script and add the lines:
Code:
  def update_stepping
    currentTag = pbGetTerrainTag($game_player)
    return if PBTerrain.isRock?(currentTag)
    FollowingMoveRoute([PBMoveRoute::StepAnimeOn])
  end
 
Last edited:
44
Posts
6
Years
Thanks a lot :) But, as you have seen in my Game jam entry (Circular Knowledge), the sliding wall is already been implemented and fully functional. Not the best method but it works perfectly. I didn't post the solution here since there wasn't any interest towards this topic from the community. It is a very specific feature afterall. Thanks again for the help!
If anyone is really interested in this feature, just tell me and I'll wrote a tutorial :)
 
Last edited:
Back
Top