Thread: [Essentials Script] TM shop with compatible icons
View Single Post
  #1    
Old April 7th, 2012 (11:09 AM). Edited January 10th, 2016 by FL.
FL's Avatar
FL FL is offline
Pokémon Island Creator
     
    Join Date: Sep 2010
    Gender: Male
    Posts: 1,719
    Code:
    #===============================================================================
    # * TM shop with compatible icons - by FL (Credits will be apreciated)
    #===============================================================================
    #
    # This script is for Pokémon Essentials. It displays your current party icons
    # animated in shop screen and the pokémon that can learn a selected TM will be
    # colored and more animated.
    #
    #===============================================================================
    #
    # To this script works, put it above main, put a 160x128 background box for
    # pokémon icons in TMBOXPATH location and change the following lines in
    # PokémonMart Script (use Ctrl+F to find it):
    # 
    # -Change line 'def pbStartBuyOrSellScene(buying,stock,adapter)' to
    # 'def pbStartBuyOrSellScene(buying,stock,adapter,tmshop=false)'
    # -After line '@sprites["background"].setBitmap("Graphics/Pictures/martscreen")'
    # put 'initializeTMSprites(tmshop)'
    # -After each line 
    # '@sprites["icon"][email protected](itemwindow.item)' put 
    # 'checksTMs if @tmshop'
    # -Change line 'def pbBuyScreen' to 'def pbBuyScreen(tmshop=false)'
    # -Change line '@scene.pbStartBuyScene(@stock,@adapter)' to
    # '@scene.pbStartBuyScene(@stock,@adapter,tmshop)'
    # -Change line 'def pbPokemonMart(stock,speech=nil,cantsell=false)' to
    # 'def pbPokemonMart(stock,speech=nil,cantsell=false, tmshop=false)'
    # -Change line 'screen.pbBuyScreen' to 'screen.pbBuyScreen(tmshop)'
    #
    # To call it, use 'pbPokemonMart([ITEMS],nil,false,true)'
    # Ex: A 'pbPokemonMart([PBItems::TM01,PBItems::TM02,PBItems::TM03])' will be
    # 'pbPokemonMart([PBItems::TM01,PBItems::TM02,PBItems::TM03],nil,false,true)'  
    #
    #===============================================================================
    
    class PokemonMartScene
    
    TMBOXPATH="Graphics/Pictures/marttmbox" # You can change if you wish
    
    def initializeTMSprites(tmshop)
      @tmshop=tmshop
      if tmshop
        @sprites["tmbox"]=IconSprite.new(0,Graphics.height-224,@viewport)
        @sprites["tmbox"].setBitmap(TMBOXPATH)
        for i in 0...$Trainer.party.length
          next if $Trainer.party[i].isEgg? # Ignores eggs
          @sprites["pokemon#{i}"]=PokemonIconSprite.new($Trainer.party[i],@viewport) 
          @sprites["pokemon#{i}"].x=48*(i/2)
          @sprites["pokemon#{i}"].y=(Graphics.height-228)+56*(i%2)
        end
      end
    end  
    
    def checksTMs
      for i in 0...$Trainer.party.length
        next if $Trainer.party[i].isEgg?
        flag=false
        [email protected]["itemwindow"].item
        if $ItemData[item][ITEMPOCKET]==4
          machine=$ItemData[item][ITEMMACHINE]
          flag=pbSpeciesCompatible?($Trainer.party[i].species,machine)
        end
        # If you don't wish the selected animation change
        # the below line for 'if false'
        if @sprites["pokemon#{i}"].selected!=flag
          @sprites["pokemon#{i}"].selected=flag
          (flag) ? @sprites["pokemon#{i}"].x-=8 : @sprites["pokemon#{i}"].x+=8
        end
        gray=0
        gray=255 if !flag # Comment this line if you didn't want the uncolored sprite
        @sprites["pokemon#{i}"].tone=Tone.new(0,0,0,gray)
      end
    end
    
    def pbStartBuyScene(stock,adapter,tmshop=false) #redefine
      pbStartBuyOrSellScene(true,stock,adapter,tmshop)
    end
      
    end
    Attached Thumbnails
    tmshopscreen.png‎   marttmbox.png‎  
    __________________
    Reply With Quote