Scripts & Tutorials This forum is for scripts and code, as well as all kinds of tutorials, software, tools and so forth. Remember to give credit!
The thread revival limit does not apply here.

Closed Thread
 
Thread Tools
  #1    
Old May 30th, 2012 (4:23 PM). Edited June 20th, 2012 by zingzags.
zingzags's Avatar
zingzags zingzags is offline
PokemonGDX creator
     
    Join Date: Jan 2009
    Location: Boston
    Age: 23
    Nature: Adamant
    Posts: 562

    Well here you go :p
    I know it can be cleaner and shortened.

    Code:
    #==============================================================================
    # ¡Ü Credits to Help - 14 for both the scripts and Sprites
    # ¡Ü Edited by Zingzags
    # -Fixed bugs
    # -Clean ups
    # -Fixed Surf Bug (After Surf is done)
    # -Fixed def talk_to_pokemon while in surf
    # -Fixed Surf Check
    # -Fixed Type Check
    # -Added Door Support
    # -Fixed Hp Bug
    # -Added Pokemon Center Support
    # -Animation problems
    # -Fixed Walk_time_variable problem
    # -Added random item loot
    # -Added egg check
    #==============================================================================
    # Zingzags comments
    #==============================================================================
    # I know its not perfect, and it can be shortened, for example addind an array
    # for the random items.
    #==============================================================================

    #============================================================================== # ¡Ü Control the following Pokemon #==============================================================================

    def FollowingMoveRoute(commands,waitComplete=false) $PokemonTemp.dependentEvents.SetMoveRoute(commands,waitComplete) end

    #============================================================================== # ¡Ü Pokemon Following Character v3 By Help-14 #==============================================================================

    class DependentEvents #============================================================================== # Raises The Current Pokemon's Happiness levels +1 per each time the # Walk_time_Variable reachs 5000 then resets to 0 # ItemWalk, is when the variable reaches a certain amount, that you are able to talk to your pokemon to recieve an item #============================================================================== def add_following_time if $game_switches[2]==true && $Trainer.party.length>=1 $game_variables[Walking_Time_Variable]+=1 if $game_variables[Current_Following_Variable]!=$Trainer.party.length if $game_variables[Walking_Time_Variable]==5000 $Trainer.party[0].happiness+=1 $game_variables[Walking_Time_Variable]=0 if $game_variables[ItemWalk]==5 else $game_variables[ItemWalk]+=1 end end end end #---------------------------------------------------------------------------- # - refresh_sprite # - Change sprite without animation #----------------------------------------------------------------------------

    def refresh_sprite if $Trainer.party.length!=$game_variables[Current_Following_Variable] if $Trainer.party[0].isShiny? shiny=true else shiny=false end if $Trainer.party[0].hp>0 && !$Trainer.party[0].egg? change_sprite($Trainer.party[0].species, shiny, false) elsif $Trainer.party[0].hp<=0 remove_sprite end end end

    #---------------------------------------------------------------------------- # - change_sprite(id, shiny, animation) # - Example, to change sprite to shiny lugia with animation: # change_sprite(249, true, true) # - If just change sprite: # change_sprite(249) #---------------------------------------------------------------------------- def change_sprite(id, shiny=nil, animation=nil) events=$PokemonGlobal.dependentEvents for i in 0...events.length if events[i] && events[i][8]=="Dependent" if shiny==true events[i][6]=sprintf("%03ds",id) if FileTest.image_exist?("Graphics/Characters/"+events[i][6]) @realEvents[i].character_name=sprintf("%03ds",id) else events[i][6]=sprintf("%03d",id) @realEvents[i].character_name=sprintf("%03d",id) end else events[i][6]=sprintf("%03d",id) @realEvents[i].character_name=sprintf("%03d",id) end if animation==true $scene.spriteset.addUserAnimation(Animation_Come_Out,@realEvents[i].x,@realEvents[i].y) end $game_variables[Walking_Time_Variable]=0 end end end

    #---------------------------------------------------------------------------- # - remove_sprite(animation) # - Example, to remove sprite with animation: # remove_sprite(true) # - If just remove sprite: # remove_sprite #----------------------------------------------------------------------------

    def remove_sprite(animation=nil) events=$PokemonGlobal.dependentEvents for i in 0...events.length if events[i] && events[i][8]=="Dependent" events[i][6]=sprintf("nil") @realEvents[i].character_name=sprintf("nil") if animation==true $scene.spriteset.addUserAnimation(Animation_Come_In,@realEvents[i].x,@realEvents[i].y) pbWait(10) end $game_variables[Current_Following_Variable]=$Trainer.party[0] $game_variables[Walking_Time_Variable]=0 end end end

    #---------------------------------------------------------------------------- # - check_surf(animation) # - If current Pokemon is a water Pokemon, it is still following. # - If current Pokemon is not a water Pokemon, remove sprite. # - Require Water_Pokemon_Can_Surf = true to enable #---------------------------------------------------------------------------- def check_surf(animation=nil) events=$PokemonGlobal.dependentEvents for i in 0...events.length if events[i] && events[i][8]=="Dependent" events[i][6]=sprintf("nil") @realEvents[i].character_name=sprintf("nil") else if $Trainer.party[0].hp>0 && !$Trainer.party[0].egg? if $Trainer.party[0].hasType?(:WATER) remove_sprite else remove_sprite pbWait(20) end elsif $Trainer.party[0].hp<=0 end end end end

    #---------------------------------------------------------------------------- # - talk_to_pokemon # - It will run when you talk to Pokemon following #----------------------------------------------------------------------------

    def talk_to_pokemon e=$Trainer.party[0] events=$PokemonGlobal.dependentEvents for i in 0...events.length if events[i] && events[i][8]=="Dependent" [email protected][i].x [email protected][i].y end end if e==0 else if e.hp>0 && !$Trainer.party[0].egg? if $PokemonGlobal.surfing==true || $PokemonGlobal.bicycle==true else if e!=6 pbPlayCry(e.species) random1=rand(5) if $game_variables[ItemWalk]==5 items=[:POTION,:SUPERPOTION,:FULLRESTORE,:REVIVE,:PPUP, :PPMAX,:RARECANDY,:REPEL,:MAXREPEL,:ESCAPEROPE, :HONEY,:TINYMUSHROOM,:PEARL,:NUGGET,:GREATBALL, :ULTRABALL,:THUNDERSTONE,:MOONSTONE,:SUNSTONE,:DUSKSTONE, :REDAPRICORN,:BLUAPRICORN,:YLWAPRICORN,:GRNAPRICORN,:PNKAPRICORN, :BLKAPRICORN,:WHTAPRICORN ] random2=0 loop do random2=rand(items.length) break if hasConst?(PBItems,items[random2]) end

    Kernel.pbMessage(_INTL("{1} seems to be holding something, it looks like {1} wants to give it to me.",e.name)) Kernel.pbPokemonFound(getConst(PBItems,items[random2])) $game_variables[ItemWalk]=0 end

    if random1==0 $scene.spriteset.addUserAnimation(Emo_sing, pos_x, pos_y-2) pbWait(50) Kernel.pbMessage(_INTL("{1} loves this tune so much that {1} is singing it.",e.name)) elsif e.happiness>0 && e.happiness<=50 $scene.spriteset.addUserAnimation(Emo_Hate, pos_x, pos_y-2) pbWAit(70) Kernel.pbMessage(_INTL("{1} hate to travel with {2}.",e.name,$Trainer.name)) elsif e.status==PBStatuses::POISON && e.hp>0 && !e.egg? $scene.spriteset.addUserAnimation(Emo_Poison, pos_x, pos_y-2) pbWait(120) Kernel.pbMessage(_INTL("{1} is badly poisoned, {1} needs help quick.",e.name)) elsif e.happiness>50 && e.happiness<=100 $scene.spriteset.addUserAnimation(Emo_Normal, pos_x, pos_y-2) pbWait(100) Kernel.pbMessage(_INTL("{1} is still undecided for whether traveling with {2} is a good thing or not.",e.name,$Trainer.name)) elsif e.happiness>100 && e.happiness<150 $scene.spriteset.addUserAnimation(Emo_Happy, pos_x, pos_y-2) Kernel.pbMessage(_INTL("{1} is happy traveling with {2}.",e.name,$Trainer.name)) elsif e.happiness>=150 $scene.spriteset.addUserAnimation(Emo_love, pos_x, pos_y-2) pbWait(70) Kernel.pbMessage(_INTL("{1} loves traveling with {2}.",e.name,$Trainer.name)) end

    else

    end end end end end

    def Come_back(shiny=nil, animation=nil) events=$PokemonGlobal.dependentEvents if $game_variables[Current_Following_Variable]==$Trainer.party.length $game_variables[Current_Following_Variable] else $game_variables[Current_Following_Variable] end if $game_variables[Current_Following_Variable]==$Trainer.party.length remove_sprite(false) for i in 0...events.length $scene.spriteset.addUserAnimation(Animation_Come_Out,@realEvents[i].x,@realEvents[i].y) end else if $Trainer.party[0].isShiny? shiny=true else shiny=false end change_sprite($Trainer.party[0].species, shiny, false) end for i in 0..$Trainer.party.length-1 if $Trainer.party[i].hp>0 && !$Trainer.party[0].egg? $game_variables[Current_Following_Variable]=i refresh_sprite break end end for i in 0...events.length for i in 0..$Trainer.party.length-1 if $Trainer.party[i].hp<=0 id = $Trainer.party[i].species else id = $Trainer.party[i].species end end if events[i] && events[i][8]=="Dependent" if shiny==true events[i][6]=sprintf("%03ds",id) if FileTest.image_exist?("Graphics/Characters/"+events[i][6]) @realEvents[i].character_name=sprintf("%03ds",id) else events[i][6]=sprintf("%03d",id) @realEvents[i].character_name=sprintf("%03d",id) end else events[i][6]=sprintf("%03d",id) @realEvents[i].character_name=sprintf("%03d",id) end if animation==true else end end end end

    #---------------------------------------------------------------------------- # - check_faint # - If current Pokemon is fainted, change other Pokemon. #----------------------------------------------------------------------------

    def check_faint if $PokemonGlobal.surfing==true || $PokemonGlobal.bicycle==true else

    if $Trainer.party[0].hp<=0 $game_variables[Current_Following_Variable]=0 remove_sprite elsif $Trainer.party[0].hp>0 && !$Trainer.party[0].egg?

    end end end

    def SetMoveRoute(commands,waitComplete=false) events=$PokemonGlobal.dependentEvents for i in 0...events.length if events[i] && events[i][8]=="Dependent" pbMoveRoute(@realEvents[i],commands,waitComplete) end end end end

    #---------------------------------------------------------------------------- # - Auto add Script to Kernel.pbSurf, It'll check curent Pokemon when surf #----------------------------------------------------------------------------

    def Kernel.pbSurf # if $game_player.pbHasDependentEvents? # return false # end if $DEBUG || (HIDDENMOVESCOUNTBADGES ? $Trainer.numbadges>=BADGEFORSURF : $Trainer.badges[BADGEFORSURF]) movefinder=Kernel.pbCheckMove(:SURF) if $DEBUG || movefinder if Kernel.pbConfirmMessage(_INTL("The water is dyed a deep blue... Would you like to surf?")) speciesname=!movefinder ? $Trainer.name : movefinder.name Kernel.pbMessage(_INTL("{1} used Surf!",speciesname)) pbHiddenMoveAnimation(movefinder) # $PokemonTemp.dependentEvents.check_surf surfbgm=pbGetMetadata(0,MetadataSurfBGM) $PokemonTemp.dependentEvents.check_surf if surfbgm pbCueBGM(surfbgm,0.5) end pbStartSurfing() return true end end end return false end

    #---------------------------------------------------------------------------- # - Auto add Script to pbEndSurf, It'll show sprite after surf #----------------------------------------------------------------------------

    def pbEndSurf(xOffset,yOffset) return false if !$PokemonGlobal.surfing x=$game_player.x y=$game_player.y currentTag=$game_map.terrain_tag(x,y) facingTag=Kernel.pbFacingTerrainTag if pbIsSurfableTag?(currentTag)&&!pbIsSurfableTag?(facingTag) if Kernel.pbJumpToward Kernel.pbCancelVehicles $game_map.autoplayAsCue $game_player.increase_steps result=$game_player.check_event_trigger_here([1,2]) Kernel.pbOnStepTaken(result) $PokemonTemp.dependentEvents.Come_back(true) end return true end return false end #---------------------------------------------------------------------------- # - Auto add Script to Kernel.pbCanUseHiddenMove, fix HM bug #---------------------------------------------------------------------------- def Kernel.pbCanUseHiddenMove?(pkmn,move) case move when PBMoves::FLY if !$DEBUG && !$Trainer.badges[BADGEFORFLY] Kernel.pbMessage(_INTL("Sorry, a new Badge is required.")) return false end #if $game_player.pbHasDependentEvents? # Kernel.pbMessage(_INTL("You can't use that if you have someone with you.")) # return false #end if !pbGetMetadata($game_map.map_id,MetadataOutdoor) Kernel.pbMessage(_INTL("Can't use that here.")) return false end return true when PBMoves::CUT if !$DEBUG && !$Trainer.badges[BADGEFORCUT] Kernel.pbMessage(_INTL("Sorry, a new Badge is required.")) return false end facingEvent=$game_player.pbFacingEvent if !facingEvent || facingEvent.name!="Tree" Kernel.pbMessage(_INTL("Can't use that here.")) return false end return true when PBMoves::HEADBUTT facingEvent=$game_player.pbFacingEvent if !facingEvent || facingEvent.name!="HeadbuttTree" Kernel.pbMessage(_INTL("Can't use that here.")) return false end return true when PBMoves::SURF terrain=Kernel.pbFacingTerrainTag if !$DEBUG && !$Trainer.badges[BADGEFORCUT] Kernel.pbMessage(_INTL("Sorry, a new Badge is required.")) return false end if $PokemonGlobal.surfing Kernel.pbMessage(_INTL("You're already surfing.")) return false end #if $game_player.pbHasDependentEvents? # Kernel.pbMessage(_INTL("You can't use that if you have someone with you.")) # return false #end terrain=Kernel.pbFacingTerrainTag if pbGetMetadata($game_map.map_id,MetadataBicycleAlways) Kernel.pbMessage(_INTL("Let's enjoy cycling!")) return false end if !pbIsWaterTag?(terrain) Kernel.pbMessage(_INTL("No surfing here!")) return false end return true when PBMoves::STRENGTH if !$DEBUG && !$Trainer.badges[BADGEFORSTRENGTH] Kernel.pbMessage(_INTL("Sorry, a new Badge is required.")) return false end facingEvent=$game_player.pbFacingEvent if !facingEvent || facingEvent.name!="Boulder" Kernel.pbMessage(_INTL("Can't use that here.")) return false end return true when PBMoves::ROCKSMASH terrain=Kernel.pbFacingTerrainTag if !$DEBUG && !$Trainer.badges[BADGEFORROCKSMASH] Kernel.pbMessage(_INTL("Sorry, a new Badge is required.")) return false end facingEvent=$game_player.pbFacingEvent if !facingEvent || facingEvent.name!="Rock" Kernel.pbMessage(_INTL("Can't use that here.")) return false end return true when PBMoves::FLASH if !$DEBUG && !$Trainer.badges[BADGEFORFLASH] Kernel.pbMessage(_INTL("Sorry, a new Badge is required.")) return false end if !pbGetMetadata($game_map.map_id,MetadataDarkMap) Kernel.pbMessage(_INTL("Can't use that here.")) return false end if $PokemonGlobal.flashUsed Kernel.pbMessage(_INTL("This is in use already.")) return false end return true when PBMoves::WATERFALL if !$DEBUG && !$Trainer.badges[BADGEFORWATERFALL] Kernel.pbMessage(_INTL("Sorry, a new Badge is required.")) return false end terrain=Kernel.pbFacingTerrainTag if terrain!=PBTerrain::Waterfall Kernel.pbMessage(_INTL("Can't use that here.")) return false end return true when PBMoves::DIVE if !$DEBUG && !$Trainer.badges[BADGEFORDIVE] Kernel.pbMessage(_INTL("Sorry, a new Badge is required.")) return false end if $PokemonGlobal.diving return true end if $game_player.terrain_tag!=PBTerrain::DeepWater Kernel.pbMessage(_INTL("Can't use that here.")) return false end if !pbGetMetadata($game_map.map_id,MetadataDiveMap) Kernel.pbMessage(_INTL("Can't use that here.")) return false end return true when PBMoves::TELEPORT if !pbGetMetadata($game_map.map_id,MetadataOutdoor) Kernel.pbMessage(_INTL("Can't use that here.")) return false end #if $game_player.pbHasDependentEvents? # Kernel.pbMessage(_INTL("You can't use that if you have someone with you.")) # return false #end healing=$PokemonGlobal.healingSpot if !healing healing=pbGetMetadata(0,MetadataHome) # Home end if healing mapname=pbGetMapNameFromId(healing[0]) if Kernel.pbConfirmMessage(_INTL("Want to return to the healing spot used last in {1}?",mapname)) return true end return false else Kernel.pbMessage(_INTL("Can't use that here.")) return false end when PBMoves::DIG escape=pbGetMetadata($game_map.map_id,MetadataEscapePoint) if !escape Kernel.pbMessage(_INTL("Can't use that here.")) return false end if $game_player.pbHasDependentEvents? Kernel.pbMessage(_INTL("You can't use that if you have someone with you.")) return false end mapname=pbGetMapNameFromId(escape[0]) if Kernel.pbConfirmMessage(_INTL("Want to escape from here and return to {1}?",mapname)) return true end return false when PBMoves::SWEETSCENT return true else return HiddenMoveHandlers.triggerCanUseMove(move,pkmn) end return false end

    def pbPokemonFollow(x) Kernel.pbAddDependency2(x, "Dependent", CommonEvent) $PokemonTemp.dependentEvents.refresh_sprite end

    def Talkative $PokemonTemp.dependentEvents.talk_to_pokemon end

    replace Kernel.pbMountBike with

    Code:
    def Kernel.pbMountBike
      return if $PokemonGlobal.bicycle
      $PokemonGlobal.bicycle=true
      $PokemonTemp.dependentEvents.remove_sprite(true)
      Kernel.pbUpdateVehicle
      bikebgm=pbGetMetadata(0,MetadataBicycleBGM)
      if bikebgm
        pbCueBGM(bikebgm,0.5)
      end
    end

    replace dependent events

    Code:
    class PokemonTemp
      attr_accessor :dependentEvents

    def dependentEvents @dependentEvents=DependentEvents.new if [email protected] return @dependentEvents end end

    def pbRemoveDependencies() $PokemonTemp.dependentEvents.removeAllEvents() pbDeregisterPartner() rescue nil end

    def pbAddDependency(event) $PokemonTemp.dependentEvents.addEvent(event) end

    def pbRemoveDependency(event) $PokemonTemp.dependentEvents.removeEvent(event) end

    def pbAddDependency2(eventID, eventName, commonEvent) $PokemonTemp.dependentEvents.addEvent($game_map.events[eventID],eventName,commonEvent) end

    # Gets the Game_Character object associated with a dependent event. def pbGetDependency(eventName) return $PokemonTemp.dependentEvents.getEventByName(eventName) end

    def pbRemoveDependency2(eventName) $PokemonTemp.dependentEvents.removeEventByName(eventName) end

    class PokemonGlobalMetadata attr_accessor :dependentEvents

    def dependentEvents @dependentEvents=[] if [email protected] return @dependentEvents end end

    class Game_Event def set_starting @starting=true end end

    def pbTestPass(follower,x,y,direction=nil) return $MapFactory.isPassableStrict?(follower.map.map_id,x,y,follower) end

    # Same map only def moveThrough(follower,direction) oldThrough=follower.through follower.through=true case direction when 2 # down follower.move_down when 4 # left follower.move_left when 6 # right follower.move_right when 8 # up follower.move_up end follower.through=oldThrough end

    # Same map only def moveFancy(follower,direction) deltaX=(direction == 6 ? 1 : (direction == 4 ? -1 : 0)) deltaY=(direction == 2 ? 1 : (direction == 8 ? -1 : 0)) newX = follower.x + deltaX newY = follower.y + deltaY # Move if new position is the player's, or the new position is passable, # or the current position is not passable if ($game_player.x==newX && $game_player.y==newY) || pbTestPass(follower,newX,newY,0) || !pbTestPass(follower,follower.x,follower.y,0) oldThrough=follower.through follower.through=true case direction when 2 # down follower.move_down when 4 # left follower.move_left when 6 # right follower.move_right when 8 # up follower.move_up end follower.through=oldThrough end end

    # Same map only def jumpFancy(follower,direction) deltaX=(direction == 6 ? 2 : (direction == 4 ? -2 : 0)) deltaY=(direction == 2 ? 2 : (direction == 8 ? -2 : 0)) halfDeltaX=(direction == 6 ? 1 : (direction == 4 ? -1 : 0)) halfDeltaY=(direction == 2 ? 1 : (direction == 8 ? -1 : 0)) middle=pbTestPass(follower,follower.x+halfDeltaX,follower.y+halfDeltaY,0) ending=pbTestPass(follower,follower.x+deltaX, follower.y+deltaY, 0) if middle moveFancy(follower,direction) moveFancy(follower,direction) elsif ending if pbTestPass(follower,follower.x,follower.y,0) follower.jump(deltaX,deltaY) else moveThrough(follower,direction) moveThrough(follower,direction) end end end

    def pbFancyMoveTo(follower,newX,newY) if follower.x-newX==-1 && follower.y==newY moveFancy(follower,6) elsif follower.x-newX==1 && follower.y==newY moveFancy(follower,4) elsif follower.y-newY==-1 && follower.x==newX moveFancy(follower,2) elsif follower.y-newY==1 && follower.x==newX moveFancy(follower,8) elsif follower.x-newX==-2 && follower.y==newY jumpFancy(follower,6) elsif follower.x-newX==2 && follower.y==newY jumpFancy(follower,4) elsif follower.y-newY==-2 && follower.x==newX jumpFancy(follower,2) elsif follower.y-newY==2 && follower.x==newX jumpFancy(follower,8) elsif follower.x!=newX || follower.y!=newY follower.moveto(newX,newY) end end

    class DependentEvents def createEvent(eventData) rpgEvent=RPG::Event.new(eventData[3],eventData[4]) rpgEvent.id=eventData[1] if eventData[9] # Must setup common event list here and now commonEvent=Game_CommonEvent.new(eventData[9]) rpgEvent.pages[0].list=commonEvent.list end newEvent=Game_Event.new(eventData[0],rpgEvent, $MapFactory.getMap(eventData[2])) newEvent.character_name=eventData[6] newEvent.character_hue=eventData[7] case eventData[5] # direction when 2 # down newEvent.turn_down when 4 # left newEvent.turn_left when 6 # right newEvent.turn_right when 8 # up newEvent.turn_up end return newEvent end

    attr_reader :lastUpdate

    def initialize # Original map, Event ID, Current map, X, Y, Direction events=$PokemonGlobal.dependentEvents @realEvents=[] @lastUpdate=-1 for event in events @realEvents.push(createEvent(event)) end end

    def pbEnsureEvent(event, newMapID) events=$PokemonGlobal.dependentEvents found=-1 for i in 0...events.length # Check original map ID and original event ID if events[i][0]==event.map_id && events[i][1]==event.id # Change current map ID events[i][2]=newMapID newEvent=createEvent(events[i]) # Replace event @realEvents[i]=newEvent @lastUpdate+=1 return i end end return -1 end

    def pbFollowEventAcrossMaps(leader,follower,instant=false,leaderIsTrueLeader=true) d=leader.direction areConnected=$MapFactory.areConnected?(leader.map.map_id,follower.map.map_id) # Get the rear facing tile of leader facingDirection=[0,0,8,0,6,0,4,0,2][d] if !leaderIsTrueLeader && areConnected relativePos=$MapFactory.getThisAndOtherEventRelativePos(leader,follower) if (relativePos[1]==0 && relativePos[0]==2) # 2 spaces to the right of leader facingDirection=6 elsif (relativePos[1]==0 && relativePos[0]==-2) # 2 spaces to the left of leader facingDirection=4 elsif relativePos[1]==-2 && relativePos[0]==0 # 2 spaces above leader facingDirection=8 elsif relativePos[1]==2 && relativePos[0]==0 # 2 spaces below leader facingDirection=2 end end facings=[facingDirection] # Get facing from behind facings.push([0,0,4,0,8,0,2,0,6][d]) # Get right facing facings.push([0,0,6,0,2,0,8,0,4][d]) # Get left facing if !leaderIsTrueLeader facings.push([0,0,2,0,4,0,6,0,8][d]) # Get forward facing end mapTile=nil if areConnected bestRelativePos=-1 oldthrough=follower.through follower.through=false for i in 0...facings.length facing=facings[i] tile=$MapFactory.getFacingTile(facing,leader) passable=tile && $MapFactory.isPassableStrict?(tile[0],tile[1],tile[2],follower) if i==0 && !passable && tile && $MapFactory.getTerrainTag(tile[0],tile[1],tile[2])==PBTerrain::Ledge # If the tile isn't passable and the tile is a ledge, # get tile from further behind tile=$MapFactory.getFacingTileFromPos(tile[0],tile[1],tile[2],facing) passable=tile && $MapFactory.isPassableStrict?(tile[0],tile[1],tile[2],follower) end if passable relativePos=$MapFactory.getThisAndOtherPosRelativePos( follower,tile[0],tile[1],tile[2]) distance=Math.sqrt(relativePos[0]*relativePos[0]+relativePos[1]*relativePos[1]) if bestRelativePos==-1 || bestRelativePos>distance bestRelativePos=distance mapTile=tile end if i==0 && distance<=1 # Prefer behind if tile can move up to 1 space break end end end follower.through=oldthrough else tile=$MapFactory.getFacingTile(facings[0],leader) passable=tile && $MapFactory.isPassableStrict?( tile[0],tile[1],tile[2],follower) mapTile=passable ? mapTile : nil end if mapTile && follower.map.map_id==mapTile[0] # Follower is on same map newX=mapTile[1] newY=mapTile[2] deltaX=(d == 6 ? -1 : d == 4 ? 1 : 0) deltaY=(d == 2 ? -1 : d == 8 ? 1 : 0) posX = newX + deltaX posY = newY + deltaY follower.move_speed=leader.move_speed # sync movespeed if (follower.x-newX==-1 && follower.y==newY) || (follower.x-newX==1 && follower.y==newY) || (follower.y-newY==-1 && follower.x==newX) || (follower.y-newY==1 && follower.x==newX) if instant follower.moveto(newX,newY) else pbFancyMoveTo(follower,newX,newY) end elsif (follower.x-newX==-2 && follower.y==newY) || (follower.x-newX==2 && follower.y==newY) || (follower.y-newY==-2 && follower.x==newX) || (follower.y-newY==2 && follower.x==newX) if instant follower.moveto(newX,newY) else pbFancyMoveTo(follower,newX,newY) end elsif follower.x!=posX || follower.y!=posY if instant follower.moveto(newX,newY) else pbFancyMoveTo(follower,posX,posY) pbFancyMoveTo(follower,newX,newY) end end pbTurnTowardEvent(follower,leader) else if !mapTile # Make current position into leader's position mapTile=[leader.map.map_id,leader.x,leader.y] end if follower.map.map_id==mapTile[0] # Follower is on same map as leader follower.moveto(leader.x,leader.y) pbTurnTowardEvent(follower,leader) else # Follower will move to different map events=$PokemonGlobal.dependentEvents eventIndex=pbEnsureEvent(follower,mapTile[0]) if eventIndex>=0 [email protected][eventIndex] newEventData=events[eventIndex] newFollower.moveto(mapTile[1],mapTile[2]) newEventData[3]=mapTile[1] newEventData[4]=mapTile[2] if mapTile[0]==leader.map.map_id pbTurnTowardEvent(follower,leader) end end end end end

    def debugEcho self.eachEvent {|e,d| echoln d echoln [e.map_id,e.map.map_id,e.id] } end

    def pbMapChangeMoveDependentEvents events=$PokemonGlobal.dependentEvents updateDependentEvents leader=$game_player for i in 0...events.length [email protected][i] pbFollowEventAcrossMaps(leader,event,true,i==0) # Update X and Y for this event events[i][3]=event.x events[i][4]=event.y events[i][5]=event.direction # Set leader to this event leader=event end end

    def pbMoveDependentEvents events=$PokemonGlobal.dependentEvents updateDependentEvents leader=$game_player for i in 0...events.length [email protected][i] pbFollowEventAcrossMaps(leader,event,false,i==0) # Update X and Y for this event events[i][3]=event.x events[i][4]=event.y events[i][5]=event.direction # Set leader to this event leader=event end end

    def pbTurnDependentEvents events=$PokemonGlobal.dependentEvents updateDependentEvents leader=$game_player for i in 0...events.length [email protected][i] pbTurnTowardEvent(event,leader) # Update direction for this event events[i][5]=event.direction # Set leader to this event leader=event end end

    def eachEvent events=$PokemonGlobal.dependentEvents for i in 0...events.length yield @realEvents[i],events[i] end end

    def updateDependentEvents events=$PokemonGlobal.dependentEvents return if events.length==0 for i in 0...events.length [email protected][i] next if [email protected][i] event.transparent=$game_player.transparent if (event.jumping? || event.moving?) || !($game_player.jumping? || $game_player.moving?) then event.update elsif !event.starting event.set_starting event.update event.clear_starting end events[i][3]=event.x events[i][4]=event.y events[i][5]=event.direction end # Check event triggers if Input.trigger?(Input::C) && !pbMapInterpreterRunning? # Get position of tile facing the player facingTile=$MapFactory.getFacingTile() self.eachEvent {|e,d| next if !d[9] if e.x==$game_player.x && e.y==$game_player.y # On same position if not e.jumping? && (!e.respond_to?("over_trigger") || e.over_trigger?) if e.list.size>1 # Start event $game_map.refresh if $game_map.need_refresh e.lock pbMapInterpreter.setup(e.list,e.id,e.map.map_id) end end elsif facingTile && e.map.map_id==facingTile[0] && e.x==facingTile[1] && e.y==facingTile[2] # On facing tile if not e.jumping? && (!e.respond_to?("over_trigger") || !e.over_trigger?) if e.list.size>1 # Start event $game_map.refresh if $game_map.need_refresh e.lock pbMapInterpreter.setup(e.list,e.id,e.map.map_id) end end end } end end

    def removeEvent(event) events=$PokemonGlobal.dependentEvents mapid=$game_map.map_id for i in 0...events.length if events[i][2]==mapid && # Refer to current map events[i][0]==event.map_id && # Event's map ID is original ID events[i][1]==event.id events[i]=nil @realEvents[i]=nil @lastUpdate+=1 end events.compact! @realEvents.compact! end end

    def getEventByName(name) events=$PokemonGlobal.dependentEvents for i in 0...events.length if events[i] && events[i][8]==name # Arbitrary name given to dependent event return @realEvents[i] end end return nil end

    def removeAllEvents events=$PokemonGlobal.dependentEvents events.clear @realEvents.clear @lastUpdate+=1 end

    def removeEventByName(name) events=$PokemonGlobal.dependentEvents for i in 0...events.length if events[i] && events[i][8]==name # Arbitrary name given to dependent event events[i]=nil @realEvents[i]=nil @lastUpdate+=1 end events.compact! @realEvents.compact! end end

    def addEvent(event,eventName=nil,commonEvent=nil) return if !event events=$PokemonGlobal.dependentEvents for i in 0...events.length if events[i] && events[i][0]==$game_map.map_id && events[i][1]==event.id # Already exists return end end # Original map ID, original event ID, current map ID, # event X, event Y, event direction, # event's filename, # event's hue, event's name, common event ID eventData=[ $game_map.map_id,event.id,$game_map.map_id, event.x,event.y,event.direction, event.character_name.clone, event.character_hue,eventName,commonEvent ] newEvent=createEvent(eventData) events.push(eventData) @realEvents.push(newEvent) @lastUpdate+=1 event.erase end end

    class DependentEventSprites def refresh for sprite in @sprites sprite.dispose end @sprites.clear $PokemonTemp.dependentEvents.eachEvent {|event,data| if data[0][email protected]_id # Check original map @map.events[data[1]].erase end if data[2][email protected]_id # Check current map @sprites.push(Sprite_Character.new(@viewport,event)) end } end

    def initialize(viewport,map) @disposed=false @sprites=[] @map=map @viewport=viewport refresh @lastUpdate=nil end

    def update if [email protected] refresh @lastUpdate=$PokemonTemp.dependentEvents.lastUpdate end for sprite in @sprites sprite.update end end

    def dispose return if @disposed for sprite in @sprites sprite.dispose end @sprites.clear @disposed=true end

    def disposed? @disposed end end

    Events.onSpritesetCreate+=proc{|sender,e| spriteset=e[0] # Spriteset being created viewport=e[1] # Viewport used for tilemap and characters map=spriteset.map # Map associated with the spriteset (not necessarily the current map). spriteset.addUserSprite(DependentEventSprites.new(viewport,map)) }

    Events.onMapSceneChange+=proc{|sender,e| scene=e[0] mapChanged=e[1] if mapChanged $PokemonTemp.dependentEvents.pbMapChangeMoveDependentEvents end }

    add these to your settings

    Code:
    #=========================================================
    # ● Config Script For Your Game Here
    # Change the emo_ to what ever number is the cell holding the animation
    #=========================================================
    Current_Following_Variable = 36
    CommonEvent = 3
    ItemWalk=26
    Walking_Time_Variable = 27
    Animation_Come_Out = 22
    Animation_Come_In = 23
    Emo_Happy = 24
    Emo_Normal = 25
    Emo_Hate = 26
    Emo_Poison= 27
    Emo_sing= 28
    Emo_love= 29

    Put this in common events and name it TalkToPokemon

    Code:
    Talkative

    Put this in PokemonParty

    Code:
    $PokemonTemp.dependentEvents.refresh_sprite
    under
    Code:
          next if havecommand
          if cmdSummary>=0 && command==cmdSummary
            @scene.pbSummary(pkmnid)
          elsif cmdSwitch>=0 && command==cmdSwitch
            @scene.pbSetHelpText(_INTL("Move to where?"))
            oldpkmnid=pkmnid
            [email protected](true)
            if pkmnid>=0 && pkmnid!=oldpkmnid
              pbSwitch(oldpkmnid,pkmnid)

    Also place it in PokemonStorage under

    Code:
    def pbTrainerPC
     Kernel.pbMessage(_INTL("\\se[computeropen]{1} booted up the PC.",$Trainer.name))
     pbTrainerPCMenu
      pbSEPlay("computerclose")

    also under this

    Code:
     def access
       Kernel.pbMessage(_INTL("\\se[accesspc]Accessed {1}'s PC.",$Trainer.name))
       pbTrainerPCMenu

    in def update of Game_player_ add

    $PokemonTemp.dependentEvents.add_following_time

    under
    $PokemonTemp.dependentEvents.updateDependentEvents

    Replace pbEndBattle in Pokemon_ActualScene

    Code:
    def pbEndBattle(result)
        @abortable=false
        pbShowWindow(BLANK)
        # Fade out all sprites
        $PokemonTemp.dependentEvents.check_faint
        pbBGMFade(1.0)
        pbFadeOutAndHide(@sprites)
        pbDisposeSprites
      end

    Also after you are done healing a pokemon from the pokemon center put this in

    Code:
    $PokemonTemp.dependentEvents.refresh_sprite

    Place this in PokemonField above def kernel.pbReceiveItem

    Code:
    def Kernel.pbPokemonFound(item,quantity=1,plural=nil)
      itemname=PBItems.getName(item)
      pocket=pbGetPocket(item)
      e=$Trainer.party[0].name
    if $PokemonBag.pbStoreItem(item,quantity)
      pbWait(5)

    if $ItemData[item][ITEMUSE]==3 || $ItemData[item][ITEMUSE]==4 Kernel.pbMessage(_INTL("\\se[]{1} found {2}!\\se[itemlevel]\\nIt contained {3}.\\wtnp[30]",e,itemname,PBMoves.getName($ItemData[item][ITEMMACHINE]))) Kernel.pbMessage(_INTL("{1} put the {2}\r\nin the {3} Pocket.",$Trainer.name,itemname,PokemonBag.pocketNames()[pocket])) elsif isConst?(item,PBItems,:LEFTOVERS) Kernel.pbMessage(_INTL("\\se[]{1} found some {2}!\\se[itemlevel]\\wtnp[30]",e,itemname)) Kernel.pbMessage(_INTL("{1} put the {2}\r\nin the {3} Pocket.",$Trainer.name,itemname,PokemonBag.pocketNames()[pocket])) else if quantity>1 if plural Kernel.pbMessage(_INTL("\\se[]{1} found {2} {3}!\\se[itemlevel]\\wtnp[30]",e,quantity,plural)) Kernel.pbMessage(_INTL("{1} put the {2}\r\nin the {3} Pocket.",$Trainer.name,plural,PokemonBag.pocketNames()[pocket])) else Kernel.pbMessage(_INTL("\\se[]{1} found {2} {3}s!\\se[itemlevel]\\wtnp[30]",e,quantity,itemname)) Kernel.pbMessage(_INTL("{1} put the {2}s\r\nin the {3} Pocket.",$Trainer.name,itemname,PokemonBag.pocketNames()[pocket])) end else Kernel.pbMessage(_INTL("\\se[]{1} found one {2}!\\se[itemlevel]\\wtnp[30]",e,itemname)) Kernel.pbMessage(_INTL("{1} put the {2}\r\nin the {3} Pocket.",$Trainer.name,itemname,PokemonBag.pocketNames()[pocket])) end end return true else # Can't add the item if $ItemData[item][ITEMUSE]==3 || $ItemData[item][ITEMUSE]==4 Kernel.pbMessage(_INTL("{1} found {2}!\\wtnp[20]",e,itemname)) elsif isConst?(item,PBItems,:LEFTOVERS) Kernel.pbMessage(_INTL("{1} found some {2}!\\wtnp[20]",$Trainer.name,itemname)) else if quantity>1 if plural Kernel.pbMessage(_INTL("{1} found {2} {3}!\\wtnp[20]",e,quantity,plural)) else Kernel.pbMessage(_INTL("{1} found {2} {3}s!\\wtnp[20]",$Trainer.name,quantity,itemname)) end else Kernel.pbMessage(_INTL("{1} found one {2}!\\wtnp[20]",e,itemname)) end end Kernel.pbMessage(_INTL("Too bad... The Bag is full...")) return false end end

    http://dl.dropbox.com/u/7240024/Pokemon-Follow.png
    http://dl.dropbox.com/u/7240024/emo.png
    http://dl.dropbox.com/u/7240024/emo2.png
    http://dl.dropbox.com/u/7240024/Animations.rxdata
    http://dl.dropbox.com/u/7240024/Emo_Sing.anm
    http://dl.dropbox.com/u/7240024/Emo_Poison.anm
    http://dl.dropbox.com/u/7240024/Emo_Normal.anm
    http://dl.dropbox.com/u/7240024/Emo_love.anm
    http://dl.dropbox.com/u/7240024/Emo_Hate.anm
    http://dl.dropbox.com/u/7240024/Emo_Happy.anm
    http://dl.dropbox.com/u/7240024/Characters.rar
    That should be everything, report any errors down below, anything to help make the code shorter and better post below or pm me.

    Attached Thumbnails
    Pokemon-Follow.png‎   emo.png‎   emo2.png‎  
    __________________

    Check out the Pokemon Game Engine I am working on:
    https://github.com/sjosegarcia/Pokemon


    Relevant Advertising!

      #2    
    Old May 31st, 2012 (2:30 AM).
    Nickalooose Nickalooose is offline
    --------------------
       
      Join Date: Mar 2008
      Gender: Female
      Posts: 1,309

      Impressed.

      I will test this later, not right now, but I will... If anyone else can test this now and let us know any bugs and such... It's nice you've placed all of the resources too, sometimes some people just give the script... +5 to you haha

        #3    
      Old May 31st, 2012 (8:35 AM).
      zingzags's Avatar
      zingzags zingzags is offline
      PokemonGDX creator
         
        Join Date: Jan 2009
        Location: Boston
        Age: 23
        Nature: Adamant
        Posts: 562

        I forgot something in def update of Game_player_ add

        $PokemonTemp.dependentEvents.add_following_time

        under
        $PokemonTemp.dependentEvents.updateDependentEvents

        __________________

        Check out the Pokemon Game Engine I am working on:
        https://github.com/sjosegarcia/Pokemon

          #4    
        Old May 31st, 2012 (9:16 AM).
        venom12's Avatar
        venom12 venom12 is offline
        Pokemon Crystal Rain Relased
           
          Join Date: Sep 2006
          Age: 26
          Gender: Male
          Nature: Adamant
          Posts: 529

          Great work, i didnt tested much but for now works ok, one thing i would like to have in that is, when we dont moving pokemon still steps like on hgss.

            #5    
          Old May 31st, 2012 (10:50 AM). Edited May 31st, 2012 by zingzags.
          zingzags's Avatar
          zingzags zingzags is offline
          PokemonGDX creator
             
            Join Date: Jan 2009
            Location: Boston
            Age: 23
            Nature: Adamant
            Posts: 562

            Quote:
            Originally Posted by venom12 View Post
            Great work, i didnt tested much but for now works ok, one thing i would like to have in that is, when we dont moving pokemon still steps like on hgss.

            That is a good idea, but it would require the animation to just play. I have no idea how to do that though.

            Updated the thread because I forgot a few things.

            __________________

            Check out the Pokemon Game Engine I am working on:
            https://github.com/sjosegarcia/Pokemon

              #6    
            Old June 2nd, 2012 (10:56 AM).
            zingzags's Avatar
            zingzags zingzags is offline
            PokemonGDX creator
               
              Join Date: Jan 2009
              Location: Boston
              Age: 23
              Nature: Adamant
              Posts: 562

              updated, added egg check to see if you have an egg in the first slot of your party. If you have an egg in the first slot of your party the dependent event gets removed.

              __________________

              Check out the Pokemon Game Engine I am working on:
              https://github.com/sjosegarcia/Pokemon

                #7    
              Old June 2nd, 2012 (12:31 PM).
              Lord Varion's Avatar
              Lord Varion Lord Varion is offline
              Guess who's back?
                 
                Join Date: Feb 2009
                Age: 23
                Gender: Other
                Nature: Naughty
                Posts: 2,644

                I never saw the original script.
                But, I'm guessing I'd need the sprites for the pokémon.
                But, do I need the old script too ?

                __________________

                gone.

                  #8    
                Old June 3rd, 2012 (9:50 AM).
                zingzags's Avatar
                zingzags zingzags is offline
                PokemonGDX creator
                   
                  Join Date: Jan 2009
                  Location: Boston
                  Age: 23
                  Nature: Adamant
                  Posts: 562

                  Quote:
                  Originally Posted by Nintendork15 View Post
                  I never saw the original script.
                  But, I'm guessing I'd need the sprites for the pokémon.
                  But, do I need the old script too ?
                  Yes
                  Yes
                  No
                  I haven't uploaded the sprites but they are in the original thread, search for help -14.

                  __________________

                  Check out the Pokemon Game Engine I am working on:
                  https://github.com/sjosegarcia/Pokemon

                    #9    
                  Old June 5th, 2012 (6:48 AM). Edited June 5th, 2012 by FHJoker.
                  FHJoker's Avatar
                  FHJoker FHJoker is offline
                  Re-thinking Osmium
                     
                    Join Date: Dec 2007
                    Location: Somwhere alone in peace
                    Age: 26
                    Gender: Male
                    Nature: Relaxed
                    Posts: 88

                    I did the above but i got this error message when the GotPokemon Switch is turned on.

                    ---------------------------
                    Pokemon Essentials
                    ---------------------------
                    Exception: TypeError

                    Message: cannot convert Fixnum into String

                    WalkingPkMn:44:in `+'

                    WalkingPkMn:44:in `add_following_time'

                    Game_Player_:401:in `update_old'

                    Walk_Run:71:in `update'

                    Scene_Map:85:in `miniupdate'

                    Scene_Map:83:in `loop'

                    Scene_Map:95:in `miniupdate'

                    PokemonMessages:145:in `pbUpdateSceneMap'

                    PokemonPauseMenu: 16 : in `pbShowCommands'

                    PokemonPauseMenu: 12: in `loop'

                    This exception was logged

                      #10    
                    Old June 5th, 2012 (12:45 PM).
                    zingzags's Avatar
                    zingzags zingzags is offline
                    PokemonGDX creator
                       
                      Join Date: Jan 2009
                      Location: Boston
                      Age: 23
                      Nature: Adamant
                      Posts: 562

                      Quote:
                      Originally Posted by FHJoker View Post
                      I did the above but i got this error message when the GotPokemon Switch is turned on.

                      ---------------------------
                      Pokemon Essentials
                      ---------------------------
                      Exception: TypeError

                      Message: cannot convert Fixnum into String

                      WalkingPkMn:44:in `+'

                      WalkingPkMn:44:in `add_following_time'

                      Game_Player_:401:in `update_old'

                      Walk_Run:71:in `update'

                      Scene_Map:85:in `miniupdate'

                      Scene_Map:83:in `loop'

                      Scene_Map:95:in `miniupdate'

                      PokemonMessages:145:in `pbUpdateSceneMap'

                      PokemonPauseMenu: 16 : in `pbShowCommands'

                      PokemonPauseMenu: 12: in `loop'

                      This exception was logged

                      ^ You must did something wrong, because it works fine for me.

                      Ill check that out, I updated the thread again, I forgot to add something(again), and thanks to Maruno there is an easier way to add random items.

                      __________________

                      Check out the Pokemon Game Engine I am working on:
                      https://github.com/sjosegarcia/Pokemon

                        #11    
                      Old June 6th, 2012 (9:19 AM). Edited June 6th, 2012 by FHJoker.
                      FHJoker's Avatar
                      FHJoker FHJoker is offline
                      Re-thinking Osmium
                         
                        Join Date: Dec 2007
                        Location: Somwhere alone in peace
                        Age: 26
                        Gender: Male
                        Nature: Relaxed
                        Posts: 88

                        I copied it again and got almost the same

                        ---------------------------
                        Pokemon Essentials
                        ---------------------------
                        Exception: TypeError

                        Message: cannot convert Fixnum into String

                        FollowingCharacter:44:in `+'

                        FollowingCharacter:44:in `add_following_time'

                        Game_Player_:401:in `update_old'

                        Walk_Run:71:in `update'

                        Scene_Map:104:in `update'

                        Scene_Map:101:in `loop'

                        Scene_Map:114:in `update'

                        Scene_Map:68:in `main'

                        Scene_Map:65:in `loop'

                        Scene_Map:72:in `main'

                        Edit: I put the script in a fresh version of Essentials and no error but nothing shows up

                        Edit again: Got Pikachu to show up but it says nothing except for it's cry no emotion bubble, how do i fix it. And how to I make gender differences show up?

                        Edit Again: I got another problem, using the latest version of essentials unedited before the follow script, I can only talk (hear their cry) in Test map2(Where I got my pokemon) and Test Map 1(outside) not in the daycare map I get something like this
                        ---------------------------
                        Pokemon Essentials
                        ---------------------------
                        Exception: NoMethodError

                        Message: undefined method `unlock' for nil:NilClass

                        Interpreter:512:in `command_end'

                        Interpreter:295:in `execute_command'

                        Interpreter:193:in `update'

                        Interpreter:106:in `loop'

                        Interpreter:198:in `update'

                        Scene_Map:103:in `update'

                        Scene_Map:101:in `loop'

                        Scene_Map:114:in `update'

                        Scene_Map:68:in `main'

                        Scene_Map:65:in `loop'

                        This exception was logged
                        ---------------------------
                        OK
                        ---------------------------

                        __________________


                          #12    
                        Old June 6th, 2012 (12:46 PM).
                        ChaosLord's Avatar
                        ChaosLord ChaosLord is offline
                        Game Dev Wanderer
                           
                          Join Date: Nov 2010
                          Gender: Male
                          Nature: Bold
                          Posts: 58

                          Looks great, but which section is pbMountBike's at? It's the only thing missing part I actually need. Seems to work without it, though when talking to your Pokemon, you get a call from Prof.Oak(Testing this with the latest version of Essentials.)

                            #13    
                          Old June 6th, 2012 (6:49 PM).
                          zingzags's Avatar
                          zingzags zingzags is offline
                          PokemonGDX creator
                             
                            Join Date: Jan 2009
                            Location: Boston
                            Age: 23
                            Nature: Adamant
                            Posts: 562

                            Quote:
                            Originally Posted by FHJoker View Post
                            I copied it again and got almost the same

                            ---------------------------
                            Pokemon Essentials
                            ---------------------------
                            Exception: TypeError

                            Message: cannot convert Fixnum into String

                            FollowingCharacter:44:in `+'

                            FollowingCharacter:44:in `add_following_time'

                            Game_Player_:401:in `update_old'

                            Walk_Run:71:in `update'

                            Scene_Map:104:in `update'

                            Scene_Map:101:in `loop'

                            Scene_Map:114:in `update'

                            Scene_Map:68:in `main'

                            Scene_Map:65:in `loop'

                            Scene_Map:72:in `main'

                            Edit: I put the script in a fresh version of Essentials and no error but nothing shows up

                            Edit again: Got Pikachu to show up but it says nothing except for it's cry no emotion bubble, how do i fix it. And how to I make gender differences show up?

                            Edit Again: I got another problem, using the latest version of essentials unedited before the follow script, I can only talk (hear their cry) in Test map2(Where I got my pokemon) and Test Map 1(outside) not in the daycare map I get something like this
                            ---------------------------
                            Pokemon Essentials
                            ---------------------------
                            Exception: NoMethodError

                            Message: undefined method `unlock' for nil:NilClass

                            Interpreter:512:in `command_end'

                            Interpreter:295:in `execute_command'

                            Interpreter:193:in `update'

                            Interpreter:106:in `loop'

                            Interpreter:198:in `update'

                            Scene_Map:103:in `update'

                            Scene_Map:101:in `loop'

                            Scene_Map:114:in `update'

                            Scene_Map:68:in `main'

                            Scene_Map:65:in `loop'

                            This exception was logged
                            ---------------------------
                            OK
                            ---------------------------

                            Ill try to see into that.

                            __________________

                            Check out the Pokemon Game Engine I am working on:
                            https://github.com/sjosegarcia/Pokemon

                              #14    
                            Old June 10th, 2012 (11:33 AM). Edited June 10th, 2012 by ~Angel~.
                            ~Angel~'s Avatar
                            ~Angel~ ~Angel~ is offline
                            Lead developer for Pokémon Millennium
                               
                              Join Date: Mar 2010
                              Location: United States Of America.
                              Age: 19
                              Gender: Male
                              Nature: Quiet
                              Posts: 287

                              Hm...Nice job yet I can't figure out how to add
                              in def update of Game_player_ add

                              $PokemonTemp.dependentEvents.add_following_time

                              under
                              $PokemonTemp.dependentEvents.updateDependentEvents
                              I am unsure of where to put it. I looked but I don't see where you say to put it.

                              Edit: Well Never mind I got it but now It's giving me a problem with the
                              Put this in PokemonParty
                              Code:
                              $PokemonTemp.dependentEvents.refresh_sprite part as well as the piece under it. I put it exactly where you said to unless I am mistaken.
                              Edit 2:
                              ---------------------------
                              Pokemon Essentials
                              ---------------------------
                              Script 'PokemonParty' line 2: NoMethodError occurred.

                              undefined method `dependentEvents' for nil:NilClass
                              ---------------------------
                              OK
                              ---------------------------
                              This is the Error I get. Not sure of what it means. Maybe you can help me? Now it's just giving me a bunch of errors. I am going to repute it back in and start over.
                              Edit: I got it to work but now I need to figure out how to make the pokemon follow.
                              My Last Edit: How do I add pokemon? It's not working for me.

                                #15    
                              Old June 17th, 2012 (11:17 AM). Edited June 17th, 2012 by zingzags.
                              zingzags's Avatar
                              zingzags zingzags is offline
                              PokemonGDX creator
                                 
                                Join Date: Jan 2009
                                Location: Boston
                                Age: 23
                                Nature: Adamant
                                Posts: 562

                                Update to fix the unlock problem comment out this line
                                in Interperter line 512:

                                Code:
                                $game_map.events[@event_id].unlock
                                to
                                Code:
                                #$game_map.events[@event_id].unlock
                                I will try to fix the pokemon not talking soon.

                                EDIT:nvm I fixed the no talking issue

                                Code:
                                #==============================================================================
                                # ¡Ü Credits to Help - 14 for both the scripts and Sprites
                                # ¡Ü Edited by Zingzags
                                # -Fixed bugs
                                # -Clean ups
                                # -Fixed Surf Bug (After Surf is done)
                                # -Fixed def talk_to_pokemon while in surf
                                # -Fixed Surf Check
                                # -Fixed Type Check
                                # -Added Door Support
                                # -Fixed Hp Bug
                                # -Added Pokemon Center Support
                                # -Animation problems
                                # -Fixed Walk_time_variable problem
                                # -Added random item loot
                                # -Added egg check
                                #==============================================================================
                                # Zingzags comments
                                #==============================================================================
                                # I know its not perfect, and it can be shortened, for example addind an array
                                # for the random items.
                                #==============================================================================

                                #============================================================================== # ¡Ü Control the following Pokemon #==============================================================================

                                def FollowingMoveRoute(commands,waitComplete=false) $PokemonTemp.dependentEvents.SetMoveRoute(commands,waitComplete) end

                                #============================================================================== # ¡Ü Pokemon Following Character v3 By Help-14 #==============================================================================

                                class DependentEvents #============================================================================== # Raises The Current Pokemon's Happiness levels +1 per each time the # Walk_time_Variable reachs 5000 then resets to 0 # ItemWalk, is when the variable reaches a certain amount, that you are able to talk to your pokemon to recieve an item #============================================================================== def add_following_time if $game_switches[2]==true && $Trainer.party.length>=1 $game_variables[Walking_Time_Variable]+=1 if $game_variables[Current_Following_Variable]!=$Trainer.party.length if $game_variables[Walking_Time_Variable]==5000 $Trainer.party[0].happiness+=1 $game_variables[Walking_Time_Variable]=0 if $game_variables[ItemWalk]==5 else $game_variables[ItemWalk]+=1 end end end end #---------------------------------------------------------------------------- # - refresh_sprite # - Change sprite without animation #----------------------------------------------------------------------------

                                def refresh_sprite if $Trainer.party.length!=$game_variables[Current_Following_Variable] if $Trainer.party[0].isShiny? shiny=true else shiny=false end if $Trainer.party[0].hp>0 && !$Trainer.party[0].egg? change_sprite($Trainer.party[0].species, shiny, false) elsif $Trainer.party[0].hp<=0 remove_sprite end end end

                                #---------------------------------------------------------------------------- # - change_sprite(id, shiny, animation) # - Example, to change sprite to shiny lugia with animation: # change_sprite(249, true, true) # - If just change sprite: # change_sprite(249) #---------------------------------------------------------------------------- def change_sprite(id, shiny=nil, animation=nil) events=$PokemonGlobal.dependentEvents for i in 0...events.length if events[i] && events[i][8]=="Dependent" if shiny==true events[i][6]=sprintf("%03ds",id) if FileTest.image_exist?("Graphics/Characters/"+events[i][6]) @realEvents[i].character_name=sprintf("%03ds",id) else events[i][6]=sprintf("%03d",id) @realEvents[i].character_name=sprintf("%03d",id) end else events[i][6]=sprintf("%03d",id) @realEvents[i].character_name=sprintf("%03d",id) end if animation==true $scene.spriteset.addUserAnimation(Animation_Come_Out,@realEvents[i].x,@realEvents[i].y) end $game_variables[Walking_Time_Variable]=0 end end end

                                #---------------------------------------------------------------------------- # - remove_sprite(animation) # - Example, to remove sprite with animation: # remove_sprite(true) # - If just remove sprite: # remove_sprite #----------------------------------------------------------------------------

                                def remove_sprite(animation=nil) events=$PokemonGlobal.dependentEvents for i in 0...events.length if events[i] && events[i][8]=="Dependent" events[i][6]=sprintf("nil") @realEvents[i].character_name=sprintf("nil") if animation==true $scene.spriteset.addUserAnimation(Animation_Come_In,@realEvents[i].x,@realEvents[i].y) pbWait(10) end $game_variables[Current_Following_Variable]=$Trainer.party[0] $game_variables[Walking_Time_Variable]=0 end end end

                                #---------------------------------------------------------------------------- # - check_surf(animation) # - If current Pokemon is a water Pokemon, it is still following. # - If current Pokemon is not a water Pokemon, remove sprite. # - Require Water_Pokemon_Can_Surf = true to enable #---------------------------------------------------------------------------- def check_surf(animation=nil) events=$PokemonGlobal.dependentEvents for i in 0...events.length if events[i] && events[i][8]=="Dependent" events[i][6]=sprintf("nil") @realEvents[i].character_name=sprintf("nil") else if $Trainer.party[0].hp>0 && !$Trainer.party[0].egg? if $Trainer.party[0].hasType?(:WATER) remove_sprite else remove_sprite pbWait(20) end elsif $Trainer.party[0].hp<=0 end end end end

                                #---------------------------------------------------------------------------- # - talk_to_pokemon # - It will run when you talk to Pokemon following #----------------------------------------------------------------------------

                                def talk_to_pokemon e=$Trainer.party[0] events=$PokemonGlobal.dependentEvents for i in 0...events.length if events[i] && events[i][8]=="Dependent" [email protected][i].x [email protected][i].y end end if e==0 else if e.hp>0 && !$Trainer.party[0].egg? if $PokemonGlobal.surfing==true || $PokemonGlobal.bicycle==true else if e!=6 pbPlayCry(e.species) random1=rand(5) if $game_variables[ItemWalk]==5 items=[:POTION,:SUPERPOTION,:FULLRESTORE,:REVIVE,:PPUP, :PPMAX,:RARECANDY,:REPEL,:MAXREPEL,:ESCAPEROPE, :HONEY,:TINYMUSHROOM,:PEARL,:NUGGET,:GREATBALL, :ULTRABALL,:THUNDERSTONE,:MOONSTONE,:SUNSTONE,:DUSKSTONE, :REDAPRICORN,:BLUAPRICORN,:YLWAPRICORN,:GRNAPRICORN,:PNKAPRICORN, :BLKAPRICORN,:WHTAPRICORN ] random2=0 loop do random2=rand(items.length) break if hasConst?(PBItems,items[random2]) end

                                Kernel.pbMessage(_INTL("{1} seems to be holding something, it looks like {1} wants to give it to me.",e.name)) Kernel.pbPokemonFound(getConst(PBItems,items[random2])) $game_variables[ItemWalk]=0 end

                                if random1==0 $scene.spriteset.addUserAnimation(Emo_sing, pos_x, pos_y-2) pbWait(50) Kernel.pbMessage(_INTL("{1} loves this tune so much that {1} is singing it.",e.name)) elsif e.happiness>0 && e.happiness<=50 $scene.spriteset.addUserAnimation(Emo_Hate, pos_x, pos_y-2) pbWAit(70) Kernel.pbMessage(_INTL("{1} hate to travel with {2}.",e.name,$Trainer.name)) elsif e.status==PBStatuses::POISON && e.hp>0 && !e.egg? $scene.spriteset.addUserAnimation(Emo_Poison, pos_x, pos_y-2) pbWait(120) Kernel.pbMessage(_INTL("{1} is badly poisoned, {1} needs help quick.",e.name)) elsif e.happiness>50 && e.happiness<=100 $scene.spriteset.addUserAnimation(Emo_Normal, pos_x, pos_y-2) pbWait(100) Kernel.pbMessage(_INTL("{1} is still undecided for whether traveling with {2} is a good thing or not.",e.name,$Trainer.name)) elsif e.happiness>100 && e.happiness<150 $scene.spriteset.addUserAnimation(Emo_Happy, pos_x, pos_y-2) Kernel.pbMessage(_INTL("{1} is happy traveling with {2}.",e.name,$Trainer.name)) elsif e.happiness>=150 $scene.spriteset.addUserAnimation(Emo_love, pos_x, pos_y-2) pbWait(70) Kernel.pbMessage(_INTL("{1} loves traveling with {2}.",e.name,$Trainer.name)) end

                                else

                                end end end end end

                                def Come_back(shiny=nil, animation=nil) events=$PokemonGlobal.dependentEvents if $game_variables[Current_Following_Variable]==$Trainer.party.length $game_variables[Current_Following_Variable] else $game_variables[Current_Following_Variable] end if $game_variables[Current_Following_Variable]==$Trainer.party.length remove_sprite(false) for i in 0...events.length $scene.spriteset.addUserAnimation(Animation_Come_Out,@realEvents[i].x,@realEvents[i].y) end else if $Trainer.party[0].isShiny? shiny=true else shiny=false end change_sprite($Trainer.party[0].species, shiny, false) end for i in 0..$Trainer.party.length-1 if $Trainer.party[i].hp>0 && !$Trainer.party[0].egg? $game_variables[Current_Following_Variable]=i refresh_sprite break end end for i in 0...events.length for i in 0..$Trainer.party.length-1 if $Trainer.party[i].hp<=0 id = $Trainer.party[i].species else id = $Trainer.party[i].species end end if events[i] && events[i][8]=="Dependent" if shiny==true events[i][6]=sprintf("%03ds",id) if FileTest.image_exist?("Graphics/Characters/"+events[i][6]) @realEvents[i].character_name=sprintf("%03ds",id) else events[i][6]=sprintf("%03d",id) @realEvents[i].character_name=sprintf("%03d",id) end else events[i][6]=sprintf("%03d",id) @realEvents[i].character_name=sprintf("%03d",id) end if animation==true else end end end end

                                #---------------------------------------------------------------------------- # - check_faint # - If current Pokemon is fainted, change other Pokemon. #----------------------------------------------------------------------------

                                def check_faint if $PokemonGlobal.surfing==true || $PokemonGlobal.bicycle==true else

                                if $Trainer.party[0].hp<=0 $game_variables[Current_Following_Variable]=0 remove_sprite elsif $Trainer.party[0].hp>0 && !$Trainer.party[0].egg?

                                end end end

                                def SetMoveRoute(commands,waitComplete=false) events=$PokemonGlobal.dependentEvents for i in 0...events.length if events[i] && events[i][8]=="Dependent" pbMoveRoute(@realEvents[i],commands,waitComplete) end end end end

                                #---------------------------------------------------------------------------- # - Auto add Script to Kernel.pbSurf, It'll check curent Pokemon when surf #----------------------------------------------------------------------------

                                def Kernel.pbSurf # if $game_player.pbHasDependentEvents? # return false # end if $DEBUG || (HIDDENMOVESCOUNTBADGES ? $Trainer.numbadges>=BADGEFORSURF : $Trainer.badges[BADGEFORSURF]) movefinder=Kernel.pbCheckMove(:SURF) if $DEBUG || movefinder if Kernel.pbConfirmMessage(_INTL("The water is dyed a deep blue... Would you like to surf?")) speciesname=!movefinder ? $Trainer.name : movefinder.name Kernel.pbMessage(_INTL("{1} used Surf!",speciesname)) pbHiddenMoveAnimation(movefinder) # $PokemonTemp.dependentEvents.check_surf surfbgm=pbGetMetadata(0,MetadataSurfBGM) $PokemonTemp.dependentEvents.check_surf if surfbgm pbCueBGM(surfbgm,0.5) end pbStartSurfing() return true end end end return false end

                                #---------------------------------------------------------------------------- # - Auto add Script to pbEndSurf, It'll show sprite after surf #----------------------------------------------------------------------------

                                def pbEndSurf(xOffset,yOffset) return false if !$PokemonGlobal.surfing x=$game_player.x y=$game_player.y currentTag=$game_map.terrain_tag(x,y) facingTag=Kernel.pbFacingTerrainTag if pbIsSurfableTag?(currentTag)&&!pbIsSurfableTag?(facingTag) if Kernel.pbJumpToward Kernel.pbCancelVehicles $game_map.autoplayAsCue $game_player.increase_steps result=$game_player.check_event_trigger_here([1,2]) Kernel.pbOnStepTaken(result) $PokemonTemp.dependentEvents.Come_back(true) end return true end return false end #---------------------------------------------------------------------------- # - Auto add Script to Kernel.pbCanUseHiddenMove, fix HM bug #---------------------------------------------------------------------------- def Kernel.pbCanUseHiddenMove?(pkmn,move) case move when PBMoves::FLY if !$DEBUG && !$Trainer.badges[BADGEFORFLY] Kernel.pbMessage(_INTL("Sorry, a new Badge is required.")) return false end #if $game_player.pbHasDependentEvents? # Kernel.pbMessage(_INTL("You can't use that if you have someone with you.")) # return false #end if !pbGetMetadata($game_map.map_id,MetadataOutdoor) Kernel.pbMessage(_INTL("Can't use that here.")) return false end return true when PBMoves::CUT if !$DEBUG && !$Trainer.badges[BADGEFORCUT] Kernel.pbMessage(_INTL("Sorry, a new Badge is required.")) return false end facingEvent=$game_player.pbFacingEvent if !facingEvent || facingEvent.name!="Tree" Kernel.pbMessage(_INTL("Can't use that here.")) return false end return true when PBMoves::HEADBUTT facingEvent=$game_player.pbFacingEvent if !facingEvent || facingEvent.name!="HeadbuttTree" Kernel.pbMessage(_INTL("Can't use that here.")) return false end return true when PBMoves::SURF terrain=Kernel.pbFacingTerrainTag if !$DEBUG && !$Trainer.badges[BADGEFORCUT] Kernel.pbMessage(_INTL("Sorry, a new Badge is required.")) return false end if $PokemonGlobal.surfing Kernel.pbMessage(_INTL("You're already surfing.")) return false end #if $game_player.pbHasDependentEvents? # Kernel.pbMessage(_INTL("You can't use that if you have someone with you.")) # return false #end terrain=Kernel.pbFacingTerrainTag if pbGetMetadata($game_map.map_id,MetadataBicycleAlways) Kernel.pbMessage(_INTL("Let's enjoy cycling!")) return false end if !pbIsWaterTag?(terrain) Kernel.pbMessage(_INTL("No surfing here!")) return false end return true when PBMoves::STRENGTH if !$DEBUG && !$Trainer.badges[BADGEFORSTRENGTH] Kernel.pbMessage(_INTL("Sorry, a new Badge is required.")) return false end facingEvent=$game_player.pbFacingEvent if !facingEvent || facingEvent.name!="Boulder" Kernel.pbMessage(_INTL("Can't use that here.")) return false end return true when PBMoves::ROCKSMASH terrain=Kernel.pbFacingTerrainTag if !$DEBUG && !$Trainer.badges[BADGEFORROCKSMASH] Kernel.pbMessage(_INTL("Sorry, a new Badge is required.")) return false end facingEvent=$game_player.pbFacingEvent if !facingEvent || facingEvent.name!="Rock" Kernel.pbMessage(_INTL("Can't use that here.")) return false end return true when PBMoves::FLASH if !$DEBUG && !$Trainer.badges[BADGEFORFLASH] Kernel.pbMessage(_INTL("Sorry, a new Badge is required.")) return false end if !pbGetMetadata($game_map.map_id,MetadataDarkMap) Kernel.pbMessage(_INTL("Can't use that here.")) return false end if $PokemonGlobal.flashUsed Kernel.pbMessage(_INTL("This is in use already.")) return false end return true when PBMoves::WATERFALL if !$DEBUG && !$Trainer.badges[BADGEFORWATERFALL] Kernel.pbMessage(_INTL("Sorry, a new Badge is required.")) return false end terrain=Kernel.pbFacingTerrainTag if terrain!=PBTerrain::Waterfall Kernel.pbMessage(_INTL("Can't use that here.")) return false end return true when PBMoves::DIVE if !$DEBUG && !$Trainer.badges[BADGEFORDIVE] Kernel.pbMessage(_INTL("Sorry, a new Badge is required.")) return false end if $PokemonGlobal.diving return true end if $game_player.terrain_tag!=PBTerrain::DeepWater Kernel.pbMessage(_INTL("Can't use that here.")) return false end if !pbGetMetadata($game_map.map_id,MetadataDiveMap) Kernel.pbMessage(_INTL("Can't use that here.")) return false end return true when PBMoves::TELEPORT if !pbGetMetadata($game_map.map_id,MetadataOutdoor) Kernel.pbMessage(_INTL("Can't use that here.")) return false end #if $game_player.pbHasDependentEvents? # Kernel.pbMessage(_INTL("You can't use that if you have someone with you.")) # return false #end healing=$PokemonGlobal.healingSpot if !healing healing=pbGetMetadata(0,MetadataHome) # Home end if healing mapname=pbGetMapNameFromId(healing[0]) if Kernel.pbConfirmMessage(_INTL("Want to return to the healing spot used last in {1}?",mapname)) return true end return false else Kernel.pbMessage(_INTL("Can't use that here.")) return false end when PBMoves::DIG escape=pbGetMetadata($game_map.map_id,MetadataEscapePoint) if !escape Kernel.pbMessage(_INTL("Can't use that here.")) return false end if $game_player.pbHasDependentEvents? Kernel.pbMessage(_INTL("You can't use that if you have someone with you.")) return false end mapname=pbGetMapNameFromId(escape[0]) if Kernel.pbConfirmMessage(_INTL("Want to escape from here and return to {1}?",mapname)) return true end return false when PBMoves::SWEETSCENT return true else return HiddenMoveHandlers.triggerCanUseMove(move,pkmn) end return false end

                                def pbPokemonFollow(x) Kernel.pbAddDependency2(x, "Dependent", CommonEvent) $PokemonTemp.dependentEvents.refresh_sprite end

                                __________________

                                Check out the Pokemon Game Engine I am working on:
                                https://github.com/sjosegarcia/Pokemon

                                  #16    
                                Old June 18th, 2012 (9:09 AM). Edited June 18th, 2012 by ~Angel~.
                                ~Angel~'s Avatar
                                ~Angel~ ~Angel~ is offline
                                Lead developer for Pokémon Millennium
                                   
                                  Join Date: Mar 2010
                                  Location: United States Of America.
                                  Age: 19
                                  Gender: Male
                                  Nature: Quiet
                                  Posts: 287

                                  Everything works fine. I like it :D I just tested it's perfect. Yet in the script you should use CNG's way. He was able to make the pokemon moving even with out the player taking a step. You should look into it. Also How do I make the pokemon appear outside of the pokeball without adding 6 pokemon? Just a quick question. Just looked at it once again. The script now does not change it so Pokemon Come out when collected I might upload a video if you want to know what I mean.

                                    #17    
                                  Old June 18th, 2012 (10:50 AM).
                                  p.claydon p.claydon is offline
                                     
                                    Join Date: Jan 2011
                                    Gender:
                                    Posts: 335

                                    ok how do i get the pokemon out? ive added all the script stuff from the 1st post but dont know were to go from there (im also asuming the .anm files go in the animation folder

                                      #18    
                                    Old June 18th, 2012 (10:55 AM). Edited June 18th, 2012 by ~Angel~.
                                    ~Angel~'s Avatar
                                    ~Angel~ ~Angel~ is offline
                                    Lead developer for Pokémon Millennium
                                       
                                      Join Date: Mar 2010
                                      Location: United States Of America.
                                      Age: 19
                                      Gender: Male
                                      Nature: Quiet
                                      Posts: 287

                                      Quote:
                                      Originally Posted by p.claydon View Post
                                      ok how do i get the pokemon out? ive added all the script stuff from the 1st post but dont know were to go from there (im also asuming the .anm files go in the animation folder

                                      It's a simple set up. Just read it though and think of where you might find the stuff he is talking about. Also the .Anm does not go in that folder. It goes in the Data Folder.
                                      Edit: For the people who can't figure out how to put this in I made a upload for them. This makes it so much easier on Zingzags. Just dowload and replace the folder you have. Warning! This will replace all scripts and Maps you have made. I suggest coping the Map data you all ready have and Replacing it once done. Make sure to delete the Map data in the folder once extracted. Your welcome Zingzags ;D I thought this would help.
                                      Edit: Left the link out XD http://www.mediafire.com/?mdxz0zxm7xkjbrp This file does not contain the Overworlds for it. The scripts are all seperated by me to make sure I know where to place stuff. I will update this link everytime there is a new update on the script.

                                        #19    
                                      Old June 18th, 2012 (11:47 AM).
                                      p.claydon p.claydon is offline
                                         
                                        Join Date: Jan 2011
                                        Gender:
                                        Posts: 335

                                        ok your demo works but why is the sprite bulbasaur when the pokemon 1st starts to follow you?

                                          #20    
                                        Old June 18th, 2012 (12:07 PM).
                                        ~Angel~'s Avatar
                                        ~Angel~ ~Angel~ is offline
                                        Lead developer for Pokémon Millennium
                                           
                                          Join Date: Mar 2010
                                          Location: United States Of America.
                                          Age: 19
                                          Gender: Male
                                          Nature: Quiet
                                          Posts: 287

                                          I just set it that way. I was getting annoyed with the Over worlds that were there I just set it that way.

                                            #21    
                                          Old June 18th, 2012 (12:09 PM).
                                          p.claydon p.claydon is offline
                                             
                                            Join Date: Jan 2011
                                            Gender:
                                            Posts: 335

                                            yh just figured out roughly how it works (i had the call event wrong) but what does the 3 mean in the call script
                                            Kernel.pbAddDependency2(7, "Dependent", 3)

                                              #22    
                                            Old June 18th, 2012 (12:25 PM). Edited June 18th, 2012 by ~Angel~.
                                            ~Angel~'s Avatar
                                            ~Angel~ ~Angel~ is offline
                                            Lead developer for Pokémon Millennium
                                               
                                              Join Date: Mar 2010
                                              Location: United States Of America.
                                              Age: 19
                                              Gender: Male
                                              Nature: Quiet
                                              Posts: 287

                                              Quote:
                                              Originally Posted by p.claydon View Post
                                              yh just figured out roughly how it works (i had the call event wrong) but what does the 3 mean in the call script
                                              Kernel.pbAddDependency2(7, "Dependent", 3)

                                              I am unsure of what the '3' Means. Sense it's based of the work Help-14 I figured the same scripts he used works for the same exact one here. Once the newer version of this came up it stop working. So now it's just a matter of time until Zingzag's checks back in to tell us more. 3 is for the common event.

                                                #23    
                                              Old June 18th, 2012 (12:48 PM). Edited June 18th, 2012 by p.claydon.
                                              p.claydon p.claydon is offline
                                                 
                                                Join Date: Jan 2011
                                                Gender:
                                                Posts: 335

                                                oh

                                                shame we cant scroll through the pokemon like we used too

                                                EDIT

                                                if all your pokemon faint then your pokemon no longer follows you

                                                EDIT

                                                if all your pokemon faint then your pokemon no longer follows you - Fixed

                                                  #24    
                                                Old June 18th, 2012 (4:20 PM).
                                                ~Angel~'s Avatar
                                                ~Angel~ ~Angel~ is offline
                                                Lead developer for Pokémon Millennium
                                                   
                                                  Join Date: Mar 2010
                                                  Location: United States Of America.
                                                  Age: 19
                                                  Gender: Male
                                                  Nature: Quiet
                                                  Posts: 287

                                                  You need to update the Pokecenter scripts to. That's why they did not follow. Open up a nurse and add in this: $PokemonTemp.dependentEvents.refresh_sprite

                                                    #25    
                                                  Old June 18th, 2012 (4:32 PM).
                                                  p.claydon p.claydon is offline
                                                     
                                                    Join Date: Jan 2011
                                                    Gender:
                                                    Posts: 335

                                                    yh forgot that there was a second event page for the nurse for when you loose soo it seams to be almost identical to the old script (except its less buggy and you can not switch between your pokemon/turn off)

                                                    Closed Thread
                                                    Quick Reply

                                                    Sponsored Links
                                                    Thread Tools

                                                    Posting Rules
                                                    You may not post new threads
                                                    You may not post replies
                                                    You may not post attachments
                                                    You may not edit your posts

                                                    BB code is On
                                                    Smilies are On
                                                    [IMG] code is On
                                                    HTML code is Off

                                                    Forum Jump


                                                    All times are GMT -8. The time now is 8:46 PM.