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

Change Windowskin command not working?

  • 13
    Posts
    12
    Years
    • Seen Jul 29, 2014
    The Change Windowskin command isn't working for me at all. I know about the \w[x] command, but it would save a lot of time using a single command instead of putting it into each show text.
    I had a look at the list of commands that have been modified, or removed on the wiki and it wasn't listed, so I can only assume that I'm not doing something right.
     

    FL

    Pokémon Island Creator
  • 2,456
    Posts
    13
    Years
    • Seen yesterday
    The Change Windowskin command isn't working for me at all. I know about the \w[x] command, but it would save a lot of time using a single command instead of putting it into each show text.
    I had a look at the list of commands that have been modified, or removed on the wiki and it wasn't listed, so I can only assume that I'm not doing something right.
    Try using the script
    Code:
    value=3
    $PokemonSystem.textskin=value;
    MessageConfig.pbSetSpeechFrame(
    "Graphics/Windowskins/"+$SpeechFrames[value])
    This change to the SpeechFrame 4 (3+1). To put others change the "3".

    The Speech frame are defined in options, to change it delete in PokemonOption the
    Code:
      NumberOption.new(_INTL("SPEECH FRAME"),_INTL("TYPE%d"),1,$SpeechFrames.length,
      proc { $PokemonSystem.textskin },
      proc {|value|  $PokemonSystem.textskin=value;
         MessageConfig.pbSetSpeechFrame(
           "Graphics/Windowskins/"+$SpeechFrames[value]) }
      ),
     
  • 13
    Posts
    12
    Years
    • Seen Jul 29, 2014
    Thanks, that looks like it's working. Is there any reason why the Change Windowskin command isn't working?

    I have another question related to windowskins. Does anyone know what determines wether the speech frame or the system (menu?) frame is used? For example the text in the PokeMart (How many would you like? etc) uses the system frame, while the text used when saving (Would you like to save the game?) uses the speech frame. Is it possible to change this? For example to make the 'Would you like to save the game?' text use the system frame?
     

    Maruno

    Lead Dev of Pokémon Essentials
  • 5,286
    Posts
    16
    Years
    • Seen May 3, 2024
    "Change Windowskin" doesn't currently work (although I've fixed that for the next release).

    What it does is permanently change the speech windowskin (just like if you had changed it in Options), which is less useful than it sounds. Usually when you want a different windowskin you will only want it for one character, and the easiest way to do that is to use \w[x].

    You can't even easily change it back afterwards if you use "Change Windowskin". You would need to save the old value of $PokemonSystem.textskin somewhere first, change it and have the speech, and then manually change it back afterwards as described above. It'd only be easy if you forbid the player to set the speech frame themselves (because then you'd know what the default/player's speech frame would be).

    While I have made "Change Windowskin" usable again, as I said, it's all but useless and requires more effort to use in the end. \w[x] is much more useful, even if you do have to put it into every message.
     
  • 13
    Posts
    12
    Years
    • Seen Jul 29, 2014
    That makes a lot of sense. Thanks for explaining that. I'm only using a few different windowskins and have disallowed the player to choose which one they want to use, so it's not a problem for me.

    I've been looking at the scripts for the mart and saving to see why they use the windowskin they do, and from what I can gather commands using pbDisplayPaused will use the menu skin, while commands using Kernel.pbMessage will use the speech skin. Is this correct?
    I tried to simply switch them out with each other, but that wouldn't work. Is there an easy way to change them, or do I need to completely rewrite the code section?
     

    Maruno

    Lead Dev of Pokémon Essentials
  • 5,286
    Posts
    16
    Years
    • Seen May 3, 2024
    I think that's about right. I haven't looked into it, though. I would have thought simply replacing the message lines would work.
     
  • 13
    Posts
    12
    Years
    • Seen Jul 29, 2014
    It seems that the pbDisplayPaused commands can be changed to Kernel.pbMessage without any problems, but if I try to do the opposite I always get a NoMethodError, so I guess that something else is needed, or needs to be changed. I get the same error if I try changing Kernel.pbConfirmMessage to pbConfirm as well.
     

    Maruno

    Lead Dev of Pokémon Essentials
  • 5,286
    Posts
    16
    Years
    • Seen May 3, 2024
    I know that pbConfirm is a local thing. Each script section that uses it will have its own def pbConfirm, which does its own thing (and the Mart won't have one). Try Kernel.pbConfirmMessage instead.
     
  • 19
    Posts
    5
    Years
    • Seen May 11, 2020
    How to change windowskin by default( i mean to change it from the graphics folder)
     
    Back
    Top