RMRK is retiring.
Registration is disabled. The site will remain online, but eventually become a read-only archive. More information.

RMRK.net has nothing to do with Blockchains, Cryptocurrency or NFTs. We have been around since the early 2000s, but there is a new group using the RMRK name that deals with those things. We have nothing to do with them.
NFTs are a scam, and if somebody is trying to persuade you to buy or invest in crypto/blockchain/NFT content, please turn them down and save your money. See this video for more information.
[XP] Achievements Script

0 Members and 2 Guests are viewing this topic.

***
Rep:
Level 84
Yes, hoh my gawd!
Well the script is about 80% done. It'll fix everything <3

*
Rep: +0/-0Level 76
RMRK Junior
Well the script is about 80% done. It'll fix everything <3

Hehe, hope you can cos i really want this script, its awesum sauce x) :blizj:

**
Rep: +0/-0Level 71
RMRK Junior
This script still doesn't work. Line 156, same error as the person had before.

Anyone find a fix for it?

**
Rep: +0/-0Level 72
Not-so-Noob
Peeps, i have a problem with copying and pasting this script. When i select all it seems that when i paste it ALL goes on one line in the script. Any help?

*****
my name is Timothy what's yours
Rep:
Level 79
Hello
2014 Best IRC Quote2014 Zero to Hero2014 Most Missed Member2012 Zero To HeroSecret Santa 2012 ParticipantContestant - GIAW 9For frequently finding and reporting spam and spam bots2011 Zero to Hero
You're using internet explorer, use chrome, firefox or safari (eww). IE doesn't copy it properly.
it's like a metaphor or something i don't know

***
Rep:
Level 84
Yes, hoh my gawd!
Finally decided to remake this. Yes, everyones been waiting. I've decided to implement some features and whatnot. If you have any lemme know.

Planned:
-Achievement Categories
-Use Background Image for Pop Up Achievements
-Change Color of Text
-Change Font of Text
-New Layout
-Better Compatibility
-Must Setup all Achievements in Script, No More Items
-In-Game Sorting Options

Its getting scripted as we speak.

You're using internet explorer, use chrome, firefox or safari (eww). IE doesn't copy it properly.

Or opera <3

***
Rep:
Level 84
Yes, hoh my gawd!
Updates to 2.0. So much better then before. Please check it out and the new demo and everything. :) Love you guys <3

*****
my name is Timothy what's yours
Rep:
Level 79
Hello
2014 Best IRC Quote2014 Zero to Hero2014 Most Missed Member2012 Zero To HeroSecret Santa 2012 ParticipantContestant - GIAW 9For frequently finding and reporting spam and spam bots2011 Zero to Hero
Oh my bowie, g_g that looks great!
I MUST NOW PURCHASE XP.
it's like a metaphor or something i don't know

**
Rep: +0/-0Level 68
RMRK Junior
Hi 1st of all, love your script, am planing to use it in an upcommng rpg (will ofcourse credit you)

I wanted to ask cause i had problems with this
i wanted to use 48x48 icons instead of 24x24

i managed to change the popup window
Code: [Select]
self.bitmap.blt(icon_off[0], icon_off[1], @icon, Rect.new(0, 0, 24, 24))
to
Code: [Select]
self.bitmap.blt(icon_off[0], icon_off[1], @icon, Rect.new(0, 0, 48, 48))

bare in mind im just figuring stuff about scripting.

By toying with your script i also now arranged the icon etc how i wanted it

but i can figure it out in the Awards window
the selectable text and icons are cut, and i messed with it to no awail
i dont know what section to edit

Window_QuickAwards or Window_Awards,
Selectabe etc

and i managed to put QuickAwards to my menu, dont know if Awards is different.

Could you explain a few thing for me.

Would be greatufll if you would help me set icons to 48x48. Thanks.
« Last Edit: June 24, 2011, 03:33:31 PM by Zero86Sk »

***
Rep:
Level 84
Yes, hoh my gawd!
Try this, I made the modifications hopefully it works couldn't really test it. Just place this below my script.
Code: [Select]
class Window_Awards < Window_Selectable
  def initialize
    super(0, 0, 640, 320)
    @column_max = 5
    refresh
    self.index = 0
  end
  def item
    return @data[self.index]
  end
  def refresh
    if self.contents != nil
      self.contents.dispose
      self.contents = nil
    end
    @data = []
    $game_system.awards.each {|i|
      @data.push([Awards::Award[i], i])}
    if Awards::Show_All
      @data = []
      @locked = []
      @unlocked = []
      Awards::Award.each_index {|i|
        if Awards::Award[i] != nil
          if $game_system.awards.include?(i)
            @unlocked.push([Awards::Award[i], i])
          else
            @locked.push([Awards::Award[i], i])
          end
        end}
      @unlocked.each {|i| @data.push(i)}
      @locked.each {|i| @data.push(i)}
    end
    @item_max = @data.size
    if @item_max > 0
      self.contents = Bitmap.new(width - 32, row_max * 48)
      for i in 0...@item_max
        draw_item(i)
      end
    end
  end
  def draw_item(index)
    item = @data[index]
    x = 4 + index % @column_max * (128)
    y = index / @column_max * 48
    rect = Rect.new(x, y, self.width / @column_max - 32, 48)
    self.contents.fill_rect(rect, Color.new(0, 0, 0, 0))
    if $game_system.awards.include?(item[1])
      bitmap = RPG::Cache.icon(item[0][2])
    else
      bitmap = RPG::Cache.icon(Awards::Locked_Icon)
    end
    self.contents.blt(x, y, bitmap, Rect.new(0, 0, 48, 48))
  end
  def update_help
    @help_window.set_award(self.item)
  end
  def update_cursor_rect
    if @index < 0
      self.cursor_rect.empty
      return
    end
    row = @index / @column_max
    if row < self.top_row
      self.top_row = row
    end
    if row > self.top_row + (self.page_row_max - 1)
      self.top_row = row - (self.page_row_max - 1)
    end
    cursor_width = 48
    x = @index % @column_max * (128)
    y = @index / @column_max * 48 - self.oy
    self.cursor_rect.set(x, y, cursor_width, 48)
  end
end

It should work.

**
Rep: +0/-0Level 68
RMRK Junior
Thanks but for some reason i cant get into the Awards menu
@Scene = QScene_Awards.new
works but i dont know what to use for the other one

**
Rep: +0/-0Level 68
RMRK Junior
EDIT: Yeah i got it o how i want it to look but the damn thing wont scroll
it just stays there
is there a parameter i could use for it to scroll (if you have more than 48 achievements)

and the 2nd problem is the images wont appear fully if i have less achievements

from what i figured out after hours of playing with it
I am actually learning the scripting code thanks to this btw.

Here is the edited code:

Code: [Select]
#===============================================================================
# Window_QuickAwards
#===============================================================================
class Window_QuickAwards < Window_Selectable
  def initialize
#    super(64, 128 + 64, 512, 320 - 64)
    super(64, 192, 512, 273)
    @column_max = 9
    self.z = 500
    refresh
    self.index = 0
  end
  def item
    return @data[self.index]
  end
  def refresh
    if self.contents != nil
      self.contents.dispose
      self.contents = nil
    end
    @data = []
    $game_system.awards.each {|i|
      @data.push([Awards::Award[i], i])}
    if Awards::Show_All
      @data = []
      @locked = []
      @unlocked = []
      Awards::Award.each_index {|i|
        if Awards::Award[i] != nil
          if $game_system.awards.include?(i)
            @unlocked.push([Awards::Award[i], i])
          else
            @locked.push([Awards::Award[i], i])
          end
        end}
      @unlocked.each {|i| @data.push(i)}
      @locked.each {|i| @data.push(i)}
    end
    @item_max = @data.size
    if @item_max > 0
      self.contents = Bitmap.new(width - 48, row_max * 96)
      for i in 0...@item_max
        draw_item(i)
      end
    end
  end
  def draw_item(index)
    item = @data[index]
    x = 2 + index % @column_max * (52)
    y = index / @column_max * 52
    rect = Rect.new(x, y, self.width / @column_max - 32, 32)
    self.contents.fill_rect(rect, Color.new(0, 0, 0, 0))
    if $game_system.awards.include?(item[1])
      bitmap = RPG::Cache.icon(item[0][2])
    else
      bitmap = RPG::Cache.icon(Awards::Locked_Icon)
    end
    self.contents.blt(x, y + 2, bitmap, Rect.new(0, 0, 48, 48))
  end
  def update_help
    @help_window.set_award(self.item)
  end
  def update_cursor_rect
    if @index < 0
      self.cursor_rect.empty
      return
    end
    row = @index / @column_max
    if row < self.top_row
      self.top_row = row
    end
    if row > self.top_row + (self.page_row_max - 1)
      self.top_row = row - (self.page_row_max - 1)
    end
    cursor_width = 52
    x = @index % @column_max * (cursor_width + 0)
    y = @index / @column_max * 52 - self.oy
    self.cursor_rect.set(x, y, cursor_width, 52)
  end
end

also these appear to do nothing pretty much

    rect = Rect.new(x, y, self.width / @column_max - 32, 32)
    self.contents = Bitmap.new(width - 48, row_max * 96) (row_max has something to do with if its below a certain number the pictures dont appear

but awesome script

i use QScene_Awards as i mention so this is the part that changes for me

heres a pic to better understand what i mean
« Last Edit: June 24, 2011, 07:55:36 PM by Zero86Sk »

***
Rep:
Level 84
Yes, hoh my gawd!
Oh sorry, use $scene = Scene_Achievements.new for the other one. Look what I did with the Window_Awards. The only difference between QuickAwards and Awards window is the size.

**
Rep: +0/-0Level 68
RMRK Junior
Yeah that works, but i still cant scroll if i have too manny achievements, it jsut dosnt scroll and overlaps the select screen

***
Rep:
Level 84
Yes, hoh my gawd!
I'll go in and edit the quick awards myself so it'll work. And again use
Code: [Select]
$scene = Scene_Achievements.new
to get to the main scene. The quick awards scene isn't mean to be accessed through a script.

**
Rep: +0/-0Level 68
RMRK Junior
I got it to work nicely woth
$scene = Scene_Achievements.new

but it still wont scroll down if you have more achievements (about 70

am trying to pinpoint why it dosnt work

it starts scrolling after a certain size (over 100 achievements)
but rest are still hidden down you cant see them

my scripting knowlage is limited cause i got RPG Maker XP a week ago
but if i could improve and help with the script like fix bugs like this than id be happy too

Used the code you sent me (thanks) and than could figure out the measures (not fully but most)
this is how it looks after i changed it

Code: [Select]
#===============================================================================
# Window_Awards
#===============================================================================
class Window_Awards < Window_Selectable
  def initialize
    super(0, 0, 640, 320)
    @column_max = 11
    refresh
    self.index = 0
  end
  def item
    return @data[self.index]
  end
  def refresh
    if self.contents != nil
      self.contents.dispose
      self.contents = nil
    end
    @data = []
    $game_system.awards.each {|i|
      @data.push([Awards::Award[i], i])}
    if Awards::Show_All
      @data = []
      @locked = []
      @unlocked = []
      Awards::Award.each_index {|i|
        if Awards::Award[i] != nil
          if $game_system.awards.include?(i)
            @unlocked.push([Awards::Award[i], i])
          else
            @locked.push([Awards::Award[i], i])
          end
        end}
      @unlocked.each {|i| @data.push(i)}
      @locked.each {|i| @data.push(i)}
    end
    @item_max = @data.size
    if @item_max > 0
      self.contents = Bitmap.new(width - 48, row_max * 64)
      for i in 0...@item_max
        draw_item(i)
      end
    end
  end
  def draw_item(index)
    item = @data[index]
    x = 2 + index % @column_max * (52)
    y = index / @column_max * 52
    rect = Rect.new(x, y, self.width / @column_max - 32, 48)
    self.contents.fill_rect(rect, Color.new(0, 0, 0, 0))
    if $game_system.awards.include?(item[1])
      bitmap = RPG::Cache.icon(item[0][2])
    else
      bitmap = RPG::Cache.icon(Awards::Locked_Icon)
    end
    self.contents.blt(x, y + 2, bitmap, Rect.new(0, 0, 48, 48))
  end
  def update_help
    @help_window.set_award(self.item)
  end
  def update_cursor_rect
    if @index < 0
      self.cursor_rect.empty
      return
    end
    row = @index / @column_max
    if row < self.top_row
      self.top_row = row
    end
    if row > self.top_row + (self.page_row_max - 1)
      self.top_row = row - (self.page_row_max - 1)
    end
    cursor_width = 52
    x = @index % @column_max * (cursor_width + 0)
    y = @index / @column_max * 52 - self.oy
    self.cursor_rect.set(x, y, cursor_width, 52)
  end
end

this way 54 achievements are visible one 1 screen but it wont scroll down if you have 63 and more
it just moves the cursor down
« Last Edit: June 25, 2011, 08:16:17 PM by Zero86Sk »

***
Rep:
Level 84
Yes, hoh my gawd!
Gimme a day or two and I'll fidget with it. In fact I might just update the script to allow any size icon.

***
Rep:
Level 84
Yes, hoh my gawd!
Updated to 2.2. Added custom icon size support.

**
Rep: +0/-0Level 68
RMRK Junior
Hi thats cool
tried it out
when i go access the menu i get

uninitialized contend Awards::Icon_Row
and
uninitialized contend Awards::Icon_QuickRow

I took the script and just changed the icon size and values for rows as you described
dosnt work for me even if unedited

the popup works but i just cant access the emnu

***
Rep:
Level 84
Yes, hoh my gawd!

***
Rep:
Level 84
Yes, hoh my gawd!
Updated to 2.22. Fixed syntax error.

****
Rep:
Level 83
Really enjoy the new lay out and flow, been using this for my game, also i made a slight mod to it that allows for the achievements to be saved out side of the standard save files so no matter what save file you use or new game you work towards the complete achievement list.

I just think this is a nifty feature if your looking for some suggestions on new features you can add this.
Spoiler for:
METALFRESH is a paint contractor that specializes in refinishing metal and vinyl siding. We paint metal buildings as well as siding on homes.

We also

    Refinish decks
    Do custom interior painting
    Strip wallpaper
    Refinish cedar siding
    Metal front doors and sidelights
    Metal garage and service doors
    Grained fiberglass doors

    If your structure is *RUSTED *FADED *CHALKING *IN NEED OF COLOR CHANGE, we can fix it with a guarentee!

northern Illinois and southern Wisconsin.

http://metalfreshcoatings.com


***
Rep:
Level 84
Yes, hoh my gawd!
Its possible. I'll add it as an optional feature later on.

****
Rep:
Level 83
late response: Cool, that way it will be like a gamer profile.
Spoiler for:
METALFRESH is a paint contractor that specializes in refinishing metal and vinyl siding. We paint metal buildings as well as siding on homes.

We also

    Refinish decks
    Do custom interior painting
    Strip wallpaper
    Refinish cedar siding
    Metal front doors and sidelights
    Metal garage and service doors
    Grained fiberglass doors

    If your structure is *RUSTED *FADED *CHALKING *IN NEED OF COLOR CHANGE, we can fix it with a guarentee!

northern Illinois and southern Wisconsin.

http://metalfreshcoatings.com


**
Rep: +0/-0Level 78
RMRK Junior
BUMP
This script is extremely useful. I'm using it for memos... Yeah, you heard right, memos... Like in game Resident Evil III, where you collect files (books, pictures, etc...). There is only one thing missing...

When I select one achievement, I want when I press f.e. ENTER new window appears with my user defined text (and pictures) and I can scroll through this big window (left and right, like page listing)...

It would be great.

Sorry for my awful english :D