Resource icon

Adding Roller Skates

Pokémon Essentials Version
v17.2 ✅
Hello there ,this script will give you the functionality of using skates like an item.
so first paste this script above main.
#-------------------------------------------------------------------------------
# Adding Roller_Skates
# by Aryesh
#-------------------------------------------------------------------------------
#It provides all the functionality of bicycle if u need some thing more functionality
#you can contact me on RC or PC or DM . I am new here so don't hesitate
#to ask any thing.
#--------------------------------------------------------------------------------


def Kernel.pbMountSkates
return if $PokemonGlobal.skates
$PokemonGlobal.skates = true
$game_player.setDefaultCharName("boy_skate",$game_player.fullPattern)
$game_player.skates_speed
bikebgm = pbGetMetadata(0,MetadataBicycleBGM)
pbCueBGM(bikebgm,0.5) if bikebgm
end

def Kernel.pbDismountSkates
return if !$PokemonGlobal.skates
$PokemonGlobal.skates = false
$game_player.setDefaultCharName(nil,$game_player.fullPattern)
pbUpdateVehicle
$game_map.autoplayAsCue
end

class Game_Player
def skates_speed
if $PokemonGlobal.skates
@move_speed = ($RPGVX) ? 7.2 : 4.9
end
end
end

def pbSkateCheck
if $PokemonGlobal.surfing ||
(!$PokemonGlobal.skates && PBTerrain.onlyWalk?(pbGetTerrainTag))
Kernel.pbMessage(_INTL("Can't use that here."))
return false
end
if $game_player.pbHasDependentEvents?
Kernel.pbMessage(_INTL("It can't be used when you have someone with you."))
return false
end
if $PokemonGlobal.skates
if pbGetMetadata($game_map.map_id,MetadataSkatesAlways)
Kernel.pbMessage(_INTL("You can't dismount your Bike here."))
return false
end
return true
else
val=pbGetMetadata($game_map.map_id,MetadataSkates)
val=pbGetMetadata($game_map.map_id,MetadataOutdoor) if val==nil
if !val
Kernel.pbMessage(_INTL("Can't use that here."))
return false
end
return true
end
end

class PokemonGlobalMetadata
attr_accessor :skates
end

#Item_Handling
ItemHandlers::UseFromBag.add(:SKATES,proc{|item|
next (pbSkateCheck) ? 2 : 0
})

ItemHandlers::UseText.add(:SKATES,proc{|item|
next ($PokemonGlobal.skates) ? _INTL("Walk") : _INTL("Use")
})

ItemHandlers::UseInField.add(:SKATES,proc{|item|
if pbSkateCheck
if $PokemonGlobal.skates
Kernel.pbDismountSkates
else
Kernel.pbMountSkates
end
next 1
end
next 0
})
MetadataSkates = 19
MetadataSkatesAlways = 20

def pbCanUseSkates?(mapid)
return true if pbGetMetadata(mapid,MetadataSkatesAlways)
val = pbGetMetadata(mapid,MetadataSkates)
val = pbGetMetadata(mapid,MetadataOutdoor) if val==nil
return (val) ? true : false
end
# Debug_Entry
class MapScreenScene
LOCALMAPS.push (["Skates",BooleanProperty,
_INTL("If true, the skates can be used on this map.")],
["SkatesAlways",BooleanProperty,
_INTL("If true, the skates will be mounted automatically on this map and cannot be dismounted.")])
end

module Kernel
class << Kernel
alias pb_cancel_vehicles pbCancelVehicles
def self.pbCancelVehicles
pbDismountSkates
pb_cancel_vehicles
end
end
end
Then you need to make roller_skate item in items. txt
So paste this in new in items. txt before running the game
526,SKATES,Skate,Skates,8,0,"Attaches roller skates to the bottom of your shoes, allowing you to glide quickly around and perform tricks. ",2,0,6,
Graphics_link---
https://www.mediafire.com/file/mjghc5j3riqahc0/Graphics.rar/file
and put the icon graphics in icon folder and boy_skate pic in characters folder.
The Graphics given are not right for essential and the character graphics is also not Red"s graphics it is the Calem's graphics so you should modify the graphics. .
The main aim of this resource is to give you the functionality,but to gain completely used with pure essential i request to modify the graphics.
Credits
Aryesh(Script)
Tebited18(Graphics)
Author
Aryesh
First release
Last update
Rating
0.00 star(s) 0 ratings
Top