Diary where you can change options

Discuss how to use the Ren'Py engine to create visual novels and story-based games. New releases are announced in this section.
Forum rules
This is the right place for Ren'Py help. Please ask one question per thread, use a descriptive subject like 'NotFound error in option.rpy' , and include all the relevant information - especially any relevant code and traceback messages. Use the code tag to format scripts.
Post Reply
Message
Author
kimineechan
Newbie
Posts: 6
Joined: Sat Sep 01, 2018 5:10 am
Tumblr: kimineechan
Deviantart: kimineechan
Contact:

Diary where you can change options

#1 Post by kimineechan »

I am almost giving up on this. I'm tired of trying to finding out by myself, and sorry for the bad english, isn't my native language. Also i'm pretty new to coding, so that's where the problem lies. If someone can gimme a example on how to make this works , it would be GREAT.

So what I want :
Image

(please ignore the bad grammar LOL)
So I want a kind of diary where you can change those symptoms every end of the month.

What i have so far:
The variables:

Code: Select all

$ Symptoms = "Not selected"
    $ BodyPain = "Not selected"
    $ Hunger0 = "Not selected"
    $ Hygiene0 = "Not selected"
    $ Humor0 = "Not selected"
    $ Energy0 = "Not selected"
    $ Sleep0 = "Not selected"
How i'm working on this screen:

Code: Select all

screen journal:
    add "journal.png"
    tag menu
    modal True
    frame:
        style_group "diary"
        vbox:
#----------------------------------------------------------
            label ("Date: %s"%calendar.string)
            label "Body Pain:"
            label"[BodyPain]"
            hbox:
                imagebutton auto "body/none_%s.png" action SetVariable("BodyPain", "None"), SetVariable("Painlevel", "None")
                imagebutton auto "body/body1_%s.png" action SetVariable("BodyPain", "head")
                imagebutton auto "body/body2_%s.png" action SetVariable("BodyPain", "arm")
                imagebutton auto "body/body3_%s.png" action SetVariable("BodyPain", "organs")
                imagebutton auto "body/body4_%s.png" action SetVariable("BodyPain", "legs")


            label "Pain Level:"
            label"[Painlevel]"
            hbox:
                if BodyPain == "None":
                    imagebutton auto "body/pain0_%s.png" action NullAction()

                else:
                    imagebutton auto "body/pain1_%s.png" action SetVariable("Painlevel", "Moderate Pain")
                    imagebutton auto "body/pain2_%s.png" action SetVariable("Painlevel", "Severe Pain")
                    imagebutton auto "body/pain3_%s.png" action SetVariable("Painlevel", "Very Severe Pain")
                    imagebutton auto "body/pain4_%s.png" action SetVariable("Painlevel", "Worst Possible Pain")
#----------------------------------------------------------
            label "Symptoms:"
            label"[Symptoms]"
            hbox:
                imagebutton auto "body/anxiety_%s.png" action SetVariable("Symptoms", "Anxiety")
                imagebutton auto "body/palpitation_%s.png" action SetVariable("Symptoms", "Palpitations")
                imagebutton auto "body/ocd_%s.png" action SetVariable("Symptoms", "OCD")
                imagebutton auto "body/irritability_%s.png" action SetVariable("Symptoms", "Irritability")
                imagebutton auto "body/memory_%s.png" action SetVariable("Symptoms", "Memory Loss")

    frame:
        style_group "diary"
        #xpos 0.05
        pos (0.51, 0.05)

        vbox:

            label "Hunger Level:"
            #label"[Hunger]"
            if Hunger == "1":
                label "Not eating"
            elif Hunger =="2":
                label "Eating little"
            elif Hunger == "3":
                label "Eating healthy"
            elif Hunger == "4":
                label "Eating too much"
            else:
                label "Not selected"
            hbox:
                imagebutton auto "journal/hunger01_%s.png" action SetVariable("Hunger", "1")
                imagebutton auto "journal/hunger02_%s.png" action SetVariable("Hunger", "2")
                imagebutton auto "journal/hunger03_%s.png" action SetVariable("Hunger", "3")
                imagebutton auto "journal/hunger04_%s.png" action SetVariable("Hunger", "4")


            label "Hygiene Level:"
            #label"[Hygiene]"
            if Hygiene == "1":
                label "Not brushing hair "
            elif Hygiene =="2":
                label "Not brushing tooth"
            elif Hygiene == "3":
                label "Using same clothes for days"
            elif Hygiene == "4":
                label "Not showering"
            else:
                label "Not selected"

            hbox:
                imagebutton auto "journal/hygiene01_%s.png" action SetVariable("Hygiene", "1")
                imagebutton auto "journal/hygiene02_%s.png" action SetVariable("Hygiene", "2")
                imagebutton auto "journal/hygiene03_%s.png" action SetVariable("Hygiene", "3")
                imagebutton auto "journal/hygiene04_%s.png" action SetVariable("Hygiene", "4")

            label "Humor Level:"
            #label"[Humor]"
            if Humor == "1":
                label "Suicide Thoughts"
            elif Humor =="2":
                label "Neutral"
            elif Humor == "3":
                label "Excited"
            elif Humor == "4":
                label "Confusion"
            else:
                label "Not selected"
            hbox:
                imagebutton auto "journal/humor01_%s.png" action SetVariable("Humor", "1")
                imagebutton auto "journal/humor02_%s.png" action SetVariable("Humor", "2")
                imagebutton auto "journal/humor03_%s.png" action SetVariable("Humor", "3")
                imagebutton auto "journal/humor04_%s.png" action SetVariable("Humor", "4")
                imagebutton auto "journal/humor05_%s.png" action SetVariable("Humor", "5")

            label "Energy Level:"
            #label"[Energy]"
            if Energy == "1":
                label "No Energy"
            elif Energy =="2":
                label "Low Energy"
            elif Energy == "3":
                label "Normal Energy"
            elif Energy == "4":
                label "High Energy"
            else:
                label "Not selected"
            hbox:
                imagebutton auto "journal/energy01_%s.png" action SetVariable("Energy", "1")
                imagebutton auto "journal/energy02_%s.png" action SetVariable("Energy", "2")
                imagebutton auto "journal/energy03_%s.png" action SetVariable("Energy", "3")
                imagebutton auto "journal/energy04_%s.png" action SetVariable("Energy", "4")

            label "Sleep Level:"
            label"[Sleep]"
            if Sleep == "1":
                label "Not sleeping for days"
            elif Sleep =="2":
                label "Trouble to sleep at night"
            elif Sleep == "3":
                label "Sleeping healthy"
            elif Sleep == "4":
                label "Oversleeping"
            else:
                label "Not selected"
            hbox:
                imagebutton auto "journal/sleep01_%s.png" action SetVariable("Sleep", "1")
                imagebutton auto "journal/sleep02_%s.png" action SetVariable("Sleep", "2")
                imagebutton auto "journal/sleep03_%s.png" action SetVariable("Sleep", "3")
                imagebutton auto "journal/sleep04_%s.png" action SetVariable("Sleep", "4")


        #textbutton "Yes" xalign 0.33 yalign 0.5 action NullAction()
        #textbutton "No" xalign 0.66 yalign 0.5 action If (  (diary1 == True), true =  NullAction(), false = NullAction() )

    textbutton "JAN" xalign 0.01 yalign 0.045 action NullAction()
    textbutton "FEB" xalign 0.01 yalign 0.10 action NullAction()
    textbutton "MAR" xalign 0.01 yalign 0.18 action NullAction()
    textbutton "APR" xalign 0.96 yalign 0.26 action NullAction()
    textbutton "MAY" xalign 0.96 yalign 0.34 action NullAction()
    textbutton "JUN" xalign 0.96 yalign 0.42 action NullAction()
    textbutton "JUL" xalign 0.96 yalign 0.50 action NullAction()
    textbutton "AUG" xalign 0.96 yalign 0.58 action NullAction()
    textbutton "SEP" xalign 0.96 yalign 0.66 action NullAction()
    textbutton "OCT" xalign 0.96 yalign 0.74 action NullAction()
    textbutton "NOV" xalign 0.96 yalign 0.82 action NullAction()
    textbutton "DEC" xalign 0.96 yalign 0.9 action NullAction()

    #textbutton "Save" xalign 0.1 yalign 0.85 action NullAction()
    if Symptoms == "Not selected" or BodyPain == "Not selected" or Painlevel == "Not selected" :
        text "Please"

    else:
        textbutton "Save"  xalign 0.1 yalign 0.85 action [Hide("menu")]
What I tried in vain:
  • Arrays(i have been reading nonstoping about it, but seems that my brain is not in the mood to learn by itself)
  • changing the SetVariable to SetField (can't figure how to make it work booo)
What is working:
  • Pain & Body options must be linked to each other, so if I select the "None" from body part it changes the display to "None" in pain selector.
  • I only need to select one "option" of each topic
What i still need to do:
  • Store those variable EACH month, so I can have a "real diary" to look for (see the months buttons? that's the objective)
  • preferably less code
  • Update the bad GUI . Cause i'm lazy but i can do it XD
BTW i'm using the DSE engine for the schedule. (This is the last part of the menu coding I need to do,so I can go work on the rest of the script T_____T)
So any good soul can help me on this quest?
Attachments
example.png

philat
Eileen-Class Veteran
Posts: 1912
Joined: Wed Dec 04, 2013 12:33 pm
Contact:

Re: Diary where you can change options

#2 Post by philat »

Didn't bother doing the whole thing, but should be enough to give you some ideas on how to work through it.

Code: Select all

default Symptoms = "None"
default BodyPain = "None"
default Painlevel = 0
default Hunger = 0


default pain_lvl = ["", "Moderate Pain", "Severe Pain", "Very Severe Pain", "Worst Possible Pain"]
default hunger_lvl = ["Not selected", "Not eating", "Eating little", "Eating healthy", "Eating too much"]

default monthly_record = []

screen journal:
    add "journal.png"
    tag menu
    modal True
    frame:
        style_group "diary"
        vbox:
#----------------------------------------------------------
            label ("Date: %s"%calendar.string)
            label "Body Pain:"
            label"[BodyPain]"
            hbox:
                imagebutton auto "body/none_%s.png" action SetVariable("BodyPain", "None"), SetVariable("Painlevel", 0)
                imagebutton auto "body/body1_%s.png" action SetVariable("BodyPain", "head")
                imagebutton auto "body/body2_%s.png" action SetVariable("BodyPain", "arm")
                imagebutton auto "body/body3_%s.png" action SetVariable("BodyPain", "organs")
                imagebutton auto "body/body4_%s.png" action SetVariable("BodyPain", "legs")


            label "Pain Level:"
            label pain_lvl[Painlevel]
            hbox:
                if BodyPain:
                    imagebutton auto "body/pain1_%s.png" action SetVariable("Painlevel", 1)
                    imagebutton auto "body/pain2_%s.png" action SetVariable("Painlevel", 2)
                    imagebutton auto "body/pain3_%s.png" action SetVariable("Painlevel", 3)
                    imagebutton auto "body/pain4_%s.png" action SetVariable("Painlevel", 4)
                else:
                    imagebutton auto "body/pain0_%s.png" action NullAction()
#----------------------------------------------------------
            label "Symptoms:"
            label "[Symptoms]"
            hbox:
                imagebutton auto "body/anxiety_%s.png" action SetVariable("Symptoms", "Anxiety")
                imagebutton auto "body/palpitation_%s.png" action SetVariable("Symptoms", "Palpitations")
                imagebutton auto "body/ocd_%s.png" action SetVariable("Symptoms", "OCD")
                imagebutton auto "body/irritability_%s.png" action SetVariable("Symptoms", "Irritability")
                imagebutton auto "body/memory_%s.png" action SetVariable("Symptoms", "Memory Loss")

    frame:
        style_group "diary"
        pos (0.51, 0.05)

        vbox:
            label "Hunger Level:"
            label hunger_lvl[Hunger]
            hbox:
                imagebutton auto "journal/hunger01_%s.png" action SetVariable("Hunger", 1)
                imagebutton auto "journal/hunger02_%s.png" action SetVariable("Hunger", 2)
                imagebutton auto "journal/hunger03_%s.png" action SetVariable("Hunger", 3)
                imagebutton auto "journal/hunger04_%s.png" action SetVariable("Hunger", 4)

    textbutton "JAN" xalign 0.01 yalign 0.045 action NullAction()
    textbutton "FEB" xalign 0.01 yalign 0.10 action NullAction()
    textbutton "MAR" xalign 0.01 yalign 0.18 action NullAction()
    textbutton "APR" xalign 0.96 yalign 0.26 action NullAction()
    textbutton "MAY" xalign 0.96 yalign 0.34 action NullAction()
    textbutton "JUN" xalign 0.96 yalign 0.42 action NullAction()
    textbutton "JUL" xalign 0.96 yalign 0.50 action NullAction()
    textbutton "AUG" xalign 0.96 yalign 0.58 action NullAction()
    textbutton "SEP" xalign 0.96 yalign 0.66 action NullAction()
    textbutton "OCT" xalign 0.96 yalign 0.74 action NullAction()
    textbutton "NOV" xalign 0.96 yalign 0.82 action NullAction()
    textbutton "DEC" xalign 0.96 yalign 0.9 action NullAction()


    textbutton "Save"  xalign 0.1 yalign 0.85 action AddToSet(monthly_record, [Symptoms, BodyPain, Painlevel, Hunger]), Hide("menu")
    # later you can access the record as monthly_record[0][0] (Symptoms in January) or monthly_record[2][2] (Painlevel in March), etc.

kimineechan
Newbie
Posts: 6
Joined: Sat Sep 01, 2018 5:10 am
Tumblr: kimineechan
Deviantart: kimineechan
Contact:

Re: Diary where you can change options

#3 Post by kimineechan »

Okay this REALLY WORKS!!!

I really can store the values and this is GREAT.
But i'm still having some issues with displaying the monthly_record variable

If I use the same pattern as the others like:

Code: Select all

label monthly_record[0][0]
I get this:

Code: Select all

I'm sorry, but an uncaught exception occurred.

While running game code:
  File "game/scripts/Renroom.rpy", line 13, in script
    $ result = ui.interact()
  File "game/scripts/Renroom.rpy", line 13, in <module>
    $ result = ui.interact()
  File "game/scripts/diary.rpy", line 259, in execute
    screen apr:
  File "game/scripts/diary.rpy", line 259, in execute
    screen apr:
  File "game/scripts/diary.rpy", line 263, in execute
    frame:
  File "game/scripts/diary.rpy", line 265, in execute
    vbox:
  File "game/scripts/diary.rpy", line 270, in execute
    label monthly_record[0][0]
Exception: Cannot display 1 as text.

-- Full Traceback ------------------------------------------------------------

Full traceback:
  File "game/scripts/Renroom.rpy", line 13, in script
    $ result = ui.interact()
  File "C:\Users\Cintia\Documents\RENPY 7\renpy\ast.py", line 862, in execute
    renpy.python.py_exec_bytecode(self.code.bytecode, self.hide, store=self.store)
  File "C:\Users\Cintia\Documents\RENPY 7\renpy\python.py", line 1912, in py_exec_bytecode
    exec bytecode in globals, locals
  File "game/scripts/Renroom.rpy", line 13, in <module>
    $ result = ui.interact()
  File "C:\Users\Cintia\Documents\RENPY 7\renpy\ui.py", line 287, in interact
    rv = renpy.game.interface.interact(roll_forward=roll_forward, **kwargs)
  File "C:\Users\Cintia\Documents\RENPY 7\renpy\display\core.py", line 2649, in interact
    repeat, rv = self.interact_core(preloads=preloads, trans_pause=trans_pause, **kwargs)
  File "C:\Users\Cintia\Documents\RENPY 7\renpy\display\core.py", line 3033, in interact_core
    root_widget.visit_all(lambda i : i.per_interact())
  File "C:\Users\Cintia\Documents\RENPY 7\renpy\display\core.py", line 511, in visit_all
    d.visit_all(callback)
  File "C:\Users\Cintia\Documents\RENPY 7\renpy\display\core.py", line 511, in visit_all
    d.visit_all(callback)
  File "C:\Users\Cintia\Documents\RENPY 7\renpy\display\core.py", line 511, in visit_all
    d.visit_all(callback)
  File "C:\Users\Cintia\Documents\RENPY 7\renpy\display\screen.py", line 424, in visit_all
    callback(self)
  File "C:\Users\Cintia\Documents\RENPY 7\renpy\display\core.py", line 3033, in <lambda>
    root_widget.visit_all(lambda i : i.per_interact())
  File "C:\Users\Cintia\Documents\RENPY 7\renpy\display\screen.py", line 434, in per_interact
    self.update()
  File "C:\Users\Cintia\Documents\RENPY 7\renpy\display\screen.py", line 619, in update
    self.screen.function(**self.scope)
  File "game/scripts/diary.rpy", line 259, in execute
    screen apr:
  File "game/scripts/diary.rpy", line 259, in execute
    screen apr:
  File "game/scripts/diary.rpy", line 263, in execute
    frame:
  File "game/scripts/diary.rpy", line 265, in execute
    vbox:
  File "game/scripts/diary.rpy", line 270, in execute
    label monthly_record[0][0]#[0][0]
  File "C:\Users\Cintia\Documents\RENPY 7\renpy\ui.py", line 988, in _label
    text = renpy.text.text.Text(label, style=text_style, substitute=substitute, scope=scope, **text_kwargs)
  File "C:\Users\Cintia\Documents\RENPY 7\renpy\text\text.py", line 1362, in __init__
    raise Exception("Cannot display {0!r} as text.".format(i))
Exception: Cannot display 1 as text.

Windows-8-6.2.9200
Ren'Py 7.0.0.196
Echoes of mind 1.0
Sat Sep 08 03:30:37 2018
If i use:

Code: Select all

label "monthly_record[0][0]"
I get:

Code: Select all

I'm sorry, but an uncaught exception occurred.

While running game code:
  File "game/scripts/Renroom.rpy", line 13, in script
    $ result = ui.interact()
  File "game/scripts/Renroom.rpy", line 13, in <module>
    $ result = ui.interact()
  File "game/scripts/diary.rpy", line 259, in execute
    screen apr:
  File "game/scripts/diary.rpy", line 259, in execute
    screen apr:
  File "game/scripts/diary.rpy", line 263, in execute
    frame:
  File "game/scripts/diary.rpy", line 265, in execute
    vbox:
  File "game/scripts/diary.rpy", line 270, in execute
    label monthly_record[0][0]#[0][0]
IndexError: tuple index out of range

-- Full Traceback ------------------------------------------------------------

Full traceback:
  File "game/scripts/Renroom.rpy", line 13, in script
    $ result = ui.interact()
  File "C:\Users\Cintia\Documents\RENPY 7\renpy\ast.py", line 862, in execute
    renpy.python.py_exec_bytecode(self.code.bytecode, self.hide, store=self.store)
  File "C:\Users\Cintia\Documents\RENPY 7\renpy\python.py", line 1912, in py_exec_bytecode
    exec bytecode in globals, locals
  File "game/scripts/Renroom.rpy", line 13, in <module>
    $ result = ui.interact()
  File "C:\Users\Cintia\Documents\RENPY 7\renpy\ui.py", line 287, in interact
    rv = renpy.game.interface.interact(roll_forward=roll_forward, **kwargs)
  File "C:\Users\Cintia\Documents\RENPY 7\renpy\display\core.py", line 2649, in interact
    repeat, rv = self.interact_core(preloads=preloads, trans_pause=trans_pause, **kwargs)
  File "C:\Users\Cintia\Documents\RENPY 7\renpy\display\core.py", line 3033, in interact_core
    root_widget.visit_all(lambda i : i.per_interact())
  File "C:\Users\Cintia\Documents\RENPY 7\renpy\display\core.py", line 511, in visit_all
    d.visit_all(callback)
  File "C:\Users\Cintia\Documents\RENPY 7\renpy\display\core.py", line 511, in visit_all
    d.visit_all(callback)
  File "C:\Users\Cintia\Documents\RENPY 7\renpy\display\core.py", line 511, in visit_all
    d.visit_all(callback)
  File "C:\Users\Cintia\Documents\RENPY 7\renpy\display\screen.py", line 424, in visit_all
    callback(self)
  File "C:\Users\Cintia\Documents\RENPY 7\renpy\display\core.py", line 3033, in <lambda>
    root_widget.visit_all(lambda i : i.per_interact())
  File "C:\Users\Cintia\Documents\RENPY 7\renpy\display\screen.py", line 434, in per_interact
    self.update()
  File "C:\Users\Cintia\Documents\RENPY 7\renpy\display\screen.py", line 619, in update
    self.screen.function(**self.scope)
  File "game/scripts/diary.rpy", line 259, in execute
    screen apr:
  File "game/scripts/diary.rpy", line 259, in execute
    screen apr:
  File "game/scripts/diary.rpy", line 263, in execute
    frame:
  File "game/scripts/diary.rpy", line 265, in execute
    vbox:
  File "game/scripts/diary.rpy", line 270, in execute
    label monthly_record[0][0]#[0][0]
  File "C:\Users\Cintia\Documents\RENPY 7\renpy\ui.py", line 988, in _label
    text = renpy.text.text.Text(label, style=text_style, substitute=substitute, scope=scope, **text_kwargs)
  File "C:\Users\Cintia\Documents\RENPY 7\renpy\text\text.py", line 1377, in __init__
    self.set_text(text, scope, substitute)
  File "C:\Users\Cintia\Documents\RENPY 7\renpy\text\text.py", line 1477, in set_text
    i, did_sub = renpy.substitutions.substitute(i, scope, substitute)
  File "C:\Users\Cintia\Documents\RENPY 7\renpy\substitutions.py", line 242, in substitute
    s = formatter.vformat(s, (), kwargs)
  File "/home/tom/ab/x64lucid-deps/install/lib/python2.7/string.py", line 563, in vformat
  File "/home/tom/ab/x64lucid-deps/install/lib/python2.7/string.py", line 585, in _vformat
  File "/home/tom/ab/x64lucid-deps/install/lib/python2.7/string.py", line 646, in get_field
  File "/home/tom/ab/x64lucid-deps/install/lib/python2.7/string.py", line 603, in get_value
IndexError: tuple index out of range

Windows-8-6.2.9200
Ren'Py 7.0.0.196
Echoes of mind 1.0
Sat Sep 08 03:32:55 2018
BUT I i use:

Code: Select all

label "[monthly_record]"
I get the numbers values for example:
Image

So i cannot "pull" the text value ? also seems i can't work with each value separated (i need them to show individual pictures similar to the first picture in the post)

philat
Eileen-Class Veteran
Posts: 1912
Joined: Wed Dec 04, 2013 12:33 pm
Contact:

Re: Diary where you can change options

#4 Post by philat »

Code: Select all

label str(monthly_record[0][0])
Exception: Cannot display 1 as text. <-- This error message means it can't display the integer 1 as a string. Force it to a string. (Ren'py's bracket interpolation does that for you behind the scenes, but you don't have to use it.)

Although I don't think you actually want to display 1 -- either you saved the wrong value or you're trying to do something along the lines of label pain_lvl[monthly_record[0][0]], can't tell for certain from your error messages.

Anyway, my advice is poke at it some more. You also don't need to necessarily stick with the setup I put in -- I did whatever was simplest at the time, but if you want to give it a think-over and make monthly_record either a list/dictionary of dictionaries so you can use, say, monthly_record["Jan"]["Painlevel"] instead of monthly_record[0][2] to make it more human-readable, that's up to you. *shrug*

kimineechan
Newbie
Posts: 6
Joined: Sat Sep 01, 2018 5:10 am
Tumblr: kimineechan
Deviantart: kimineechan
Contact:

Re: Diary where you can change options

#5 Post by kimineechan »

philat wrote: Tue Sep 11, 2018 6:10 am

Code: Select all

label str(monthly_record[0][0])
Exception: Cannot display 1 as text. <-- This error message means it can't display the integer 1 as a string. Force it to a string. (Ren'py's bracket interpolation does that for you behind the scenes, but you don't have to use it.)

Although I don't think you actually want to display 1 -- either you saved the wrong value or you're trying to do something along the lines of label pain_lvl[monthly_record[0][0]], can't tell for certain from your error messages.

Anyway, my advice is poke at it some more. You also don't need to necessarily stick with the setup I put in -- I did whatever was simplest at the time, but if you want to give it a think-over and make monthly_record either a list/dictionary of dictionaries so you can use, say, monthly_record["Jan"]["Painlevel"] instead of monthly_record[0][2] to make it more human-readable, that's up to you. *shrug*
So i thought i had posted the correct option, but i guess my internet did eat the post lol
With this i can display the stored values =D

Code: Select all

text "[monthly_record[0][3]]"
label "[monthly_record[1][4]]"
I FINALLY HAVE WHAT I NEEDED. Thank you so much @philat
I guess that if i was to make it "more" readable i would i have a little more of work actually, for now im leaving like that, it's functional XD. But if i need to use it again i will have that in mind. Phew i'm so happy i finally can make the gui now :D

Post Reply

Who is online

Users browsing this forum: No registered users