- 10
- Posts
- 5
- Years
- Seen Apr 11, 2020
If you are using Following Pokemon script and want to add to will not show footprints effect (like Zubat, Zapdos, etc) for your first pokemon, so replace the code for this:
Spoiler:
Code:#=============================================================================== # # Klein Footprints for Pokémon Essentials # # Give credits if you're using this! # # https://kleinstudio.deviantart.com #=============================================================================== #Regardless of the above setting,the species in this array will always animate FOLLOWING_DONT_WALK=[ # GEN I 12,15,17,18,22,41,42,49,50,51,63,74,81,92,93,109,110,120,121,137,142,144,145, 146,149,150,151, # GEN II 164,165,166,169,171,176,187,188,189,193,200,201,204,205,207,223,226,227,233, 249,250,251, # GEN III 267,269,277,278,279,283,284,291,292,307,313,314,318,319,320,321,330,333,334, 337,338,339,340,343,344,349,351,353,355,358,362,366,367,368,369,370,374,375, 380,381,382,384,385, # GEN IV 397,398,412,413,414,415,416,420,425,426,429,433,436,437,442,455,456,457,458, 462,468,469,472,474,476,477,478,479,480,481,482,487,488,489,490,491,492,493, # GEN V 494,517,518,520,521,527,528,535,546,548,550,561,562,563,564,567,577,578, 579,581,582,583,584,589,592,593,594,597,599,600,601,602,605,606,607,608,609, 615,616,628,630,635,637,641,642,643,644,645,648, # GEN VI 662,663,666,669,670,671,679,680,681,682,683,686,690,691,693,703,707,708,710, 711,714,715,717,719,720, # GEN VII 732,733,738,742,743,746,751,761,764,769,770,774,779,781,785,786,787,788,789,790,792, 793,797,798,800,801,803,804 #GEN VIII ] # Set here the terrain tag for footprints, 3 is sand TERRAINFOOT=3 # Initial opacity for footprints FOOTOPACITY=62 # Delay velocity FOOTDELAY=1.1 class Footprint def initialize(event,position) return if event!=$game_player && (event.character_name=="" || event.character_name == "nil" || event.name.include?("/nofoot/")) return if event!=$game_player && pbEventCommentInput(event,0,"NoFoot") if $game_switches[Toggle_Following_Switch] if $Trainer.party.length>0 return if event!=$game_player && (!($game_map.events[@event_id] && $game_map.events[@event_id].name=="Dependent") && (FOLLOWING_DONT_WALK.include?($Trainer.party[0].species) || $PokemonGlobal.bicycle)) end end character_sprites=$scene.spriteset.character_sprites viewport=$scene.spriteset.viewport1 footsprites=$scene.spriteset.footsprites nid=getNewId fev=$game_map.events[nid] rpgEvent=RPG::Event.new(position[0],position[1]) rpgEvent.id=nid fev=Game_Event.new($game_map.map_id,rpgEvent,$game_map) eventsprite=Sprite_Character.new(viewport,fev) character_sprites.push(eventsprite) footsprites.push(Footsprite.new(eventsprite,fev,viewport,$game_map,position[2], nid,character_sprites,(event==$game_player))) end end def getNewId newId = 1 while $game_map.events[newId] != nil do break if $game_map.events[newId].erased newId += 1 end return newId end class Game_Event < Game_Character attr_reader :erased end class Sprite_Character alias old_initialize_foot initialize def initialize(viewport, character = nil) old_initialize_foot(viewport, character) @disposed=false end alias old_update_foot update def update return if @disposed old_update_foot end alias old_dispose_foot dispose def dispose old_dispose_foot @disposed=true end end class Spriteset_Map def viewport1; return @@viewport1; end attr_accessor :character_sprites attr_accessor :footsprites alias old_initialize initialize def initialize(map=nil) old_initialize(map) @footsprites=[] end def putFootprint(event,pos) foot=Footprint.new(event,pos) end alias old_dispose dispose def dispose old_dispose if @footsprites!=nil for sprite in @footsprites sprite.dispose end end @footsprites.clear end alias old_update update def update old_update if @footsprites!=nil for sprite in @footsprites sprite.update end end end end class Scene_Map def spriteset? return true if @spritesets!=nil return false end end class Game_Character alias old_increase_foot increase_steps def get_last_pos case direction when 2 # Move down return [@x,@y-1,direction] when 4 # Move left return [@x+1,@y,direction] when 6 # Move right return [@x-1,@y,direction] when 8 # Move up return [@x,@y+1,direction] end return false end def terrain_tag_pos(x=@x,y=@y) return $game_map.terrain_tag(x, y) end def increase_steps if terrain_tag_pos(get_last_pos[0],get_last_pos[1])==TERRAINFOOT $scene.spriteset.putFootprint(self,get_last_pos) if $scene.is_a?(Scene_Map) && $scene.spriteset? end old_increase_foot end end class Footsprite def initialize(sprite,event,viewport,map,direction,nid,chardata,player) @rsprite=sprite @sprite=Sprite.new(viewport) if player && $PokemonGlobal.bicycle @sprite.bitmap=BitmapCache.load_bitmap("Graphics/Pictures/footsetbike") else @sprite.bitmap=BitmapCache.load_bitmap("Graphics/Pictures/footset") end @[email protected]/4 @sprite.src_rect.width=@realwidth @opacity=FOOTOPACITY setFootset(direction) @event=event @disposed=false @map=map @eventid=nid @viewport=viewport @chardata=chardata update end def setFootset(direction) case direction when 2 # Move down @sprite.src_rect.x=0 when 4 # Move left @sprite.src_rect.x=@realwidth*3 when 6 # Move right @sprite.src_rect.x=@realwidth*2 when 8 # Move up @sprite.src_rect.x=@realwidth end @sprite.opacity=@opacity end def dispose if !@disposed @disposed=true @event.erase for i in [email protected] @chardata.delete_at(i) if @chardata[i]==@rsprite end @rsprite.dispose @sprite.dispose @sprite=nil end end def update return if @disposed [email protected]@rsprite.ox [email protected]@rsprite.oy [email protected]_rect.width [email protected]_rect.height @sprite.x=x+width/2 @sprite.y=y+height @sprite.ox=@realwidth/2 @[email protected] @[email protected] @opacity-=FOOTDELAY @sprite.opacity=@opacity if @sprite.opacity<=0 dispose end end end
Like you see, if you want to add do not show the effect, just put the pokemon number (its array) inside 'FOLLOWING_DONT_WALK'
I appreciate if you credit me for that. Cya!
I think there is a tiny mistake, change @@viewport1 for @viewport1, that worked for me.
Thanks WolfPP.
Last edited: