Help, multiple character selection

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
User avatar
Lethargic
Newbie
Posts: 4
Joined: Sun Jan 14, 2018 9:00 am
Contact:

Help, multiple character selection

#1 Post by Lethargic »

Hi everyone...im new to this visual novel making and im trying to make something for my final year undergraduate degree project.
Its called visual novel for university enrollment, a simulation for students who want to enroll in this university.
I know simple coding and the basics of how to use ren'py. But got stuck on how to implement this one.

How to make simple character selections like this.
https://ibb.co/iS8GP6
There will be 5 or 6 characters with different backgrounds and each one will lead to different available path.

I tried and tested by putting image on choice menu and it looks like this.
https://ibb.co/nvcMrm

Is there a way to make the character selection like the one i draw on the paper? Do i have to specifically modify the gui or smth to make it?
Ive read several tutorials and guide on how to customize the menus but still got nothing and i dont know....


*note why do i keep on getting error on attaching pictures

Ana
Regular
Posts: 61
Joined: Sun Oct 12, 2014 5:56 pm
Contact:

Re: Help, multiple character selection

#2 Post by Ana »

You could probably use an image map screen for the six characters instead of a menu and then call the screen. Here's a guide on how you can do this.

User avatar
Lethargic
Newbie
Posts: 4
Joined: Sun Jan 14, 2018 9:00 am
Contact:

Re: Help, multiple character selection

#3 Post by Lethargic »

Ana wrote: Mon Jan 15, 2018 1:41 pm You could probably use an image map screen for the six characters instead of a menu and then call the screen. Here's a guide on how you can do this.
thanks for the response...ive been reading and trying to work on this imagemap thing...but yeah it only works for 6 hotspots

can you tell me any other way than imagemap to make more than 6 selection works? coz i alrdy made the image for the menu and put 8 hotspots and the last 2 hotspots just didnt work... thanks in advance

Ana
Regular
Posts: 61
Joined: Sun Oct 12, 2014 5:56 pm
Contact:

Re: Help, multiple character selection

#4 Post by Ana »

Lethargic wrote: Tue Jan 30, 2018 3:00 pmthanks for the response...ive been reading and trying to work on this imagemap thing...but yeah it only works for 6 hotspots

can you tell me any other way than imagemap to make more than 6 selection works? coz i alrdy made the image for the menu and put 8 hotspots and the last 2 hotspots just didnt work... thanks in advance
Huh... How strange... I have been using imagemaps in my game (7 of them in one picture), and it worked just fine. Then again, I used if statements to only allow certain hotspots to show up depending on if they were clicked. When I was working on them, I found that if you use x coordinates instead of the size of the image horizontally, it might block another hotspot.

Anyway, to answer your question, you could use imagebuttons... just from a quick google search, this post could give you an idea of how you would go about that.

User avatar
Lethargic
Newbie
Posts: 4
Joined: Sun Jan 14, 2018 9:00 am
Contact:

Re: Help, multiple character selection

#5 Post by Lethargic »

Ana wrote: Tue Jan 30, 2018 7:16 pm
Huh... How strange... I have been using imagemaps in my game (7 of them in one picture), and it worked just fine. Then again, I used if statements to only allow certain hotspots to show up depending on if they were clicked. When I was working on them, I found that if you use x coordinates instead of the size of the image horizontally, it might block another hotspot.

Anyway, to answer your question, you could use imagebuttons... just from a quick google search, this post could give you an idea of how you would go about that.
would you be kind enough to share your code for that 7 hotspots?..please :D

hmm okay...i will try that imagebutton as well...it just might be the one i need...

Ana
Regular
Posts: 61
Joined: Sun Oct 12, 2014 5:56 pm
Contact:

Re: Help, multiple character selection

#6 Post by Ana »

Lethargic wrote: Tue Jan 30, 2018 10:54 pmwould you be kind enough to share your code for that 7 hotspots?..please :D

hmm okay...i will try that imagebutton as well...it just might be the one i need...
Sure, I don't mind. I don't really remember where I got the code, but somehow it worked. The if statements are just there if the player didn't click the option before (I'm using it as one of those point and click menus).
You can also add hover too. Below is a screenshot of the circle thing you would see if you were to hover over the bed in the actual game. I'm not sure if it's covered in that other tutorial I linked to, but there it is.

Image

Code: Select all

screen ryoujiroom():
    imagemap:
        ground "bg/minikled9/j-room-d.jpg"
        
        
        if aloer == "no":
            hotspot (955, 442, 56, 241) clicked Jump("aloerr") hovered ShowTransient("the_aloe", aloe="bg/minikled9/hover.png") unhovered Hide("the_aloe")
        if bookshelfr == "no":
            hotspot (1630, 561, 222, 228) clicked Jump("bookshelfrr") hovered ShowTransient("the_bookshelf", bookshelf="bg/minikled9/hover.png") unhovered Hide("the_bookshelf")
        if bedr == "no":
            hotspot (50, 721, 570, 192) clicked Jump("bedrr") hovered ShowTransient("the_bed", bed="bg/minikled9/hover.png") unhovered Hide("the_bed")
        if cactusr == "no":
            hotspot (1835, 396, 46, 93) clicked Jump("cactusrr") hovered ShowTransient("the_cactus", cactus="bg/minikled9/hover.png") unhovered Hide("the_cactus")
        if tear == "no":
            hotspot (910, 795, 60, 40) clicked Jump("tearr") hovered ShowTransient("the_tea", tea="bg/minikled9/hover.png") unhovered Hide("the_tea")
        if tvr == "no":
            hotspot (1288, 548, 200, 150) clicked Jump("tvrr") hovered ShowTransient("the_tv", tv="bg/minikled9/hover.png") unhovered Hide("the_tv")
        if visitr == 4:
            hotspot (0, 0, 1920, 1080) clicked Jump("rback") hovered ShowTransient("the_book", book="bg/minikled9/hover.png") unhovered Hide("the_book")

screen the_bookshelf(bookshelf):
    add bookshelf pos (1711, 703)
screen the_bed(bed):
    add bed pos (228, 763)
screen the_aloe(aloe):
    add aloe pos (957, 538)
screen the_cactus(cactus):
    add cactus pos (1829, 450)
screen the_tea(tea):
    add tea pos (920, 789) 
screen the_book(book):
    add book pos (1033, 770)
screen the_tv(tv):
    add tv pos (1278, 600)

User avatar
Lethargic
Newbie
Posts: 4
Joined: Sun Jan 14, 2018 9:00 am
Contact:

Re: Help, multiple character selection

#7 Post by Lethargic »

Ana wrote: Thu Feb 01, 2018 2:29 am
Lethargic wrote: Tue Jan 30, 2018 10:54 pmwould you be kind enough to share your code for that 7 hotspots?..please :D

hmm okay...i will try that imagebutton as well...it just might be the one i need...
Sure, I don't mind. I don't really remember where I got the code, but somehow it worked. The if statements are just there if the player didn't click the option before (I'm using it as one of those point and click menus).
You can also add hover too. Below is a screenshot of the circle thing you would see if you were to hover over the bed in the actual game. I'm not sure if it's covered in that other tutorial I linked to, but there it is.

Image

Code: Select all

screen ryoujiroom():
    imagemap:
        ground "bg/minikled9/j-room-d.jpg"
        
        
        if aloer == "no":
            hotspot (955, 442, 56, 241) clicked Jump("aloerr") hovered ShowTransient("the_aloe", aloe="bg/minikled9/hover.png") unhovered Hide("the_aloe")
        if bookshelfr == "no":
            hotspot (1630, 561, 222, 228) clicked Jump("bookshelfrr") hovered ShowTransient("the_bookshelf", bookshelf="bg/minikled9/hover.png") unhovered Hide("the_bookshelf")
        if bedr == "no":
            hotspot (50, 721, 570, 192) clicked Jump("bedrr") hovered ShowTransient("the_bed", bed="bg/minikled9/hover.png") unhovered Hide("the_bed")
        if cactusr == "no":
            hotspot (1835, 396, 46, 93) clicked Jump("cactusrr") hovered ShowTransient("the_cactus", cactus="bg/minikled9/hover.png") unhovered Hide("the_cactus")
        if tear == "no":
            hotspot (910, 795, 60, 40) clicked Jump("tearr") hovered ShowTransient("the_tea", tea="bg/minikled9/hover.png") unhovered Hide("the_tea")
        if tvr == "no":
            hotspot (1288, 548, 200, 150) clicked Jump("tvrr") hovered ShowTransient("the_tv", tv="bg/minikled9/hover.png") unhovered Hide("the_tv")
        if visitr == 4:
            hotspot (0, 0, 1920, 1080) clicked Jump("rback") hovered ShowTransient("the_book", book="bg/minikled9/hover.png") unhovered Hide("the_book")

screen the_bookshelf(bookshelf):
    add bookshelf pos (1711, 703)
screen the_bed(bed):
    add bed pos (228, 763)
screen the_aloe(aloe):
    add aloe pos (957, 538)
screen the_cactus(cactus):
    add cactus pos (1829, 450)
screen the_tea(tea):
    add tea pos (920, 789) 
screen the_book(book):
    add book pos (1033, 770)
screen the_tv(tv):
    add tv pos (1278, 600)
heyy..okay i did it hahah thanks for the responses ana

thankyou very much.....and erm your code for the imagemap you showed me looks complicated haha but thanks anyway i might try to code like that someday

Post Reply

Who is online

Users browsing this forum: Google [Bot]