[Renpy] 25. วิธีทำ CG Gallery แบบ Imagemap
บทความนี้จะต่อเนื่องมาจากบทความสอนวิธีการแทรกหน้า Bonus ไว้ที่หน้าเมนูหลัก 2 บทความด้านล่างนะค่ะ
ขั้นตอนที่ 1
ในที่นี้ข้าพเจ้าจะทำให้เมื่อคลิกที่เมนู"Bonus" โปรแกรมวิ่งไปที่หน้าGallery ชื่อ CG_Gallery_CAT ก่อนเป็นหน้าแรก(หรีอคุณจะเอาหน้าไหนขึ้นก่อนก็ได้)
1. [renpy] วิธีแทรกหน้าBonus ที่ Main Menu แบบ Classic
- textbutton _("Bonus") action ShowMenu("CG_Gallery_CAT")
คัดลอกไปที่คลิปบอร์ด .
- <font size="4" face="Tahoma">hotspot (314, 283, 251, 72) action Start('CG_Gallery_CAT')</font>
คัดลอกไปที่คลิปบอร์ด
แต่จากบทความที่ผ่านมาข้าพเจ้าจะแนะนำให้สร้างเป็นหน้าscreen ขึ้นมาใหม่เลยก็จะใช้คำสั่งนี้แทนค่ะ
- <font size="4" face="Tahoma">hotspot (314, 283, 251, 72)action ShowMenu('CG_Gallery_CAT')</font>
คัดลอกไปที่คลิปบอร์ดขั้นตอนที่ 2
- ปัจจัยหลักสำคัญเลยสำหรับการทำGallery นั่นก็คือภาพฉากสำคัญต่างๆ ที่จำเป็นต้องมีในเกมส์นอกจากนี้ก็รวมถึงหน้าเมนูที่เราจะต้องออกแบบเองด้วย
- ให้เตรียมภาพ 2 ชุดด้วยกันค่ะ คือ
1. เตรียมภาพหน้าเมนู CG Gallery ของแต่ละตัวละคร***ย้ำ!!! ของแต่ละตัวละคร ถ้ามีตัวละคร 4 ตัวเราก็ต้องออกแบบหน้าเมนูของตัวละคร 4 กลุ่มด้วยกัน
ยกตัวอย่างเช่น มีตัวละครทั้งหมด 4 ตัวภาพหน้าเมนู Gallery ที่คุณจะต้องออกแบบจะต้องเตรียมไว้ทั้งสิ้น 4 ชุดและภายในภาพแต่ละชุดนั้นจะประกอบไปด้วยภาพเมนูแบบต่างที่ให้มีผลและไม่มีผลกับเม้าส์ และภาพที่มีผลต่อเงื่อนไข ชุดละ 4 -5 ภาพ ด้วยกัน
สรุป!!! ถ้ามีตัวละคร 4 ตัวในเกมส์คุณจะต้องเตรียมภาพเมนูหน้า Gallery ทั้งสิ้น 16ภาพด้วยกัน!!! แต่ใจเย็นค่ะในความเป็นจริงเราคงไม่ต้องใช้มากขนาดนั้น เพราะบางภาพเราก็ใช้ซ้ำกันได้เช่นพวกแถบเมนูปุ่มต่างๆ ภาพที่ใช้ร่วมกันไม่ได้ก็มีแค่หน้าสกีนของตัวละครตัวนั้นๆแค่นั้น
ในบทความนี้เข้าพเจ้าจะออกแบบไว้เฉพาะแค่หน้า CG_Gallery_CATเท่านั้นนะค่ะ หน้า CG_Gallery_DOG , CG_Gallery_BUNNY ,CG_Gallery_XXX ไม่ทำ (ขี้เกียจ -*- )
ตัวอย่างภาพที่ต้องเตรียมในแต่ละชุด....
1. ภาพที่ไม่สามารถคลิกเข้าไปดูได้ หากเงื่อนไขไม่ถูกต้อง(ยังไม่ถูกปลดล๊อค)
2. ภาพที่จะเปลี่ยนแปลงเมื่อมีเม้าส์เลื่อนมาวางทับ
3. ภาพที่ถูกปลดล๊อคแล้ว สามารถคลิกเข้าไปดูได้
4. ภาพเมนูที่ กำลังถูกคลิกเลือกอยู่
ขั้นตอนที่ 3
- ภาพชุดที่ 2คือ เราจะต้องเตรียมภาพ CG ไว้ให้มากที่สุด จะ20 หรือ 30 ถ้าขยันวาดได้ก็ขนมาเยอะๆหุหุ (แต่ข้าพเจ้าขี้เกียจวาด เอาภาพแมวตามเน็ตมาใส่แทนก่อนก็แล้วกัน ^^")ขนาดภาพ 800*600 pt หรือหรือเท่ากับขนาดหน้าจอเกมส์ที่เราเซ็ตไว้ เช่น 1024 หรือมากกว่านั้นก็ได้
ขั้นตอนที่ 4
1. เปิดโปรแกรม JEditขึ้นมา(เปิดผ่านโปรแกรม renpy ก็ได้)และไปที่คำสั่ง File > New.... (หรือกดปุ่ม Ctrl+N)
2. โปรแกรมจะสร้างหน้า New โล่งๆมาให้เรา
3. ให้นำก๊อปปี้โค๊ดด้านล่างนี้ไปใส่ค่ะ
- <font size="4" face="Tahoma">
- ##########################################
- #--รวมหน้า Screen ภาพของ...แมว...แต่ละภาพ (มีทั้งหมด 4 ภาพ)--
- ##########################################
- label cat1: #<--ภาพแมว ภาพที่ 1
- scene cat1 with dissolve
- $ renpy.pause () #<---- ถ้าคลิกเม้าส์ เปลี่ยนถึงจะเปลี่ยน หากไม่ใส่คำสั่งนี้ ภาพจะเฟสต่อเนื่องจนครบ
-
- scene cat5 with dissolve
- $ renpy.pause ()
-
- scene cat6 with dissolve
- $ renpy.pause ()
- #$ renpy.pause (5.0) <----แบบกำหนดระยะเวลาในการเฟสภาพอัตโนมัติ
- p "น่ารักทุกภาพเลยเน๊าะ >0<...."
- hide cat1
- hide cat5
- hide cat6
- $ renpy.game_menu("CG_Gallery_CAT") #<สั่งให้กลับไปที่หน้า Gallery ของ กลุ่มภาพแมวอีกครั้ง
- return
-
- screen cat2: #<--ภาพแมว ภาพที่ 2
- button clicked Hide("cat2", transition=fade)#<แบบสั่งให้แสดงภาพ cat2 เมื่อคลิกอีกครั้งจะวิ่งไปที่ screen CG_Gallery_CAT
- add "map/cat2.jpg"
-
- screen cat3: #<--ภาพแมว ภาพที่ 3
- button clicked Hide("cat3", transition=fade)
- add "map/cat3.jpg"
-
- screen cat4: #<--ภาพแมว ภาพที่ 4
- button clicked Hide("cat4", transition=fade)
- add "map/cat4.jpg"
- ##########################################
- #----รวมหน้า Screen ภาพของ...สุนัข...แต่ละภาพ (มีทั้งหมด 4 ภาพ)
- ##########################################
- screen dog1: #<--ภาพสุนัข ภาพที่ 1
- button clicked Hide("dog1", transition=fade)
- add "map/dog1.jpg" #<---ใส่ชื่อหลอกไว้ จริงๆมันไม่มีภาพ (ยังไม่ได้ภาพหมาไว้)
-
- screen dog2: #<--ภาพสุนัข ภาพที่ 2
- button clicked Hide("dog2", transition=fade)
- add "map/dog2.jpg"
-
- screen dog3: #<--ภาพสุนัข ภาพที่ 3
- button clicked Hide("dog3", transition=fade)
- add "map/dog3.jpg"
-
- screen dog4: #<--ภาพสุนัข ภาพที่ 4
- button clicked Hide("dog4", transition=fade)
- add "map/dog4.jpg"
- ##########################################
- #---รวมหน้า Screen ภาพของ...กระต่าย...แต่ละภาพ (มีทั้งหมด 4 ภาพ)
- ##########################################
- screen bunny1: #<--ภาพกระต่าย ภาพที่ 1
- button clicked Hide("bunny1", transition=fade)
- add "map/bunny1.jpg" #<---ใส่ชื่อหลอกไว้ จริงๆมันไม่มีภาพ (ยังไม่ได้ภาพหมาไว้)
-
- screen bunny2: #<--ภาพกระต่าย ภาพที่ 2
- button clicked Hide("bunny2", transition=fade)
- add "map/bunny2.jpg"
-
- screen bunny3: #<--ภาพกระต่าย ภาพที่ 3
- button clicked Hide("bunny3", transition=fade)
- add "map/bunny3.jpg"
-
- screen bunny4: #<--ภาพกระต่าย ภาพที่ 4
- button clicked Hide("bunny4", transition=fade)
- add "map/bunny4.jpg"
- ##########################################
- #----รวมหน้า Screen ภาพของ...???(ตัวละครลับ)...แต่ละภาพ (มีทั้งหมด 4 ภาพ)--
- ##########################################
- screen xxx1: #<--ภาพพิเศษ ภาพที่ 1
- button clicked Hide("xxx1", transition=fade)
- add "map/xxx1.jpg" #<---ใส่ชื่อหลอกไว้ จริงๆมันไม่มีภาพ
-
- screen xxx2: #<#<--ภาพพิเศษ ภาพที่ 2
- button clicked Hide("xxx2", transition=fade)
- add "map/xxx2.jpg"
-
- screen xxx3: #<--ภาพพิเศษ ภาพที่ 3
- button clicked Hide("xxx3", transition=fade)
- add "map/xxx3.jpg"
-
- screen xxx4: #<--ภาพพิเศษ ภาพที่ 4
- button clicked Hide("xxx4", transition=fade)
- add "map/xxx4.jpg"
-
- ########################################
- #-------------Gallery รวมภาพของ...หน้า Gallery กลุ่มแมว...------------
- ########################################
- screen CG_Gallery_CAT:
- tag menu
- imagemap:
- ground 'menu/menu_gallery_ground_cat.png'
- idle 'menu/menu_gallery_idle_cat.png'
- hover 'menu/menu_gallery_hover_cat.png'
- selected_idle 'menu/menu_gallery_selected_idle_cat.png'
- selected_hover 'menu/menu_gallery_hover_cat.png'
- hotspot (607, 463, 193, 56) action Return() hover_sound "sound/click.wav"
-
- if persistent.group_image_cat_sum: #<กลุ่มภาพของ cat dog และ bunny ถูกปลดล๊อคครบ ภาพกลุ่มพิเศษ ??? ก็ถึงจะถูกปลดล๊อค
- if persistent.group_image_dog_sum:
- if persistent.group_image_bunny_sum:
- $ persistent.group_image_XXX_sum = True #<กลุ่มชุดรวมภาพ Gallery หน้าหลักของ XXX ถูกปลดล๊อค
-
-
- if persistent.group_image_XXX_sum: #<กลุ่มภาพของ ??? จะเปิดใช้ได้ก็ต่อเมื่อ เงื่อนไข persistent.group_image_XXX_sum เป็น True
-
- hotspot (607, 395, 193, 56) action ShowMenu("CG_Gallery_XXX") hover_sound "sound/click.wav"
-
- if persistent.group_image_bunny_sum: #<กลุ่มภาพของ BUNNY จะเปิดใช้ได้ก็ต่อเมื่อ เงื่อนไข persistent.group_image_bunny_sum เป็น True
-
- hotspot (607, 325, 193, 56) action ShowMenu("CG_Gallery_BUNNY") hover_sound "sound/click.wav"
-
- if persistent.group_image_dog_sum: #<กลุ่มภาพของ DOG จะเปิดใช้ได้ก็ต่อเมื่อ เงื่อนไข persistent.group_image_dog_sum เป็น True
-
- hotspot (607, 256, 193, 56) action ShowMenu("CG_Gallery_DOG") hover_sound "sound/click.wav"
- if persistent.group_image_cat_sum: #<กลุ่มภาพของ CAT จะเปิดใช้ได้ก็ต่อเมื่อ เงื่อนไข persistent.group_image_cat_sum เป็น True
-
- hotspot (607, 184, 193, 56) action ShowMenu("CG_Gallery_CAT") hover_sound "sound/click.wav"
-
-
- if persistent.group_image_cat_01:
- hotspot (75, 189, 208, 141) action Start(label ="cat1") #<เมื่อคลิกที่ภาพ cat1 สั่งให้วิ่งไปที่ label cat1
-
- if persistent.group_image_cat_02:
- hotspot (321, 189, 208, 141) action Show("cat2", transition=fade) #<เมื่อคลิกที่ภาพ cat2 สั่งให้วิ่งไปที่ screen cat2
-
- if persistent.group_image_cat_03:
- hotspot (75, 365, 208, 139) action Show("cat3", transition=fade)
-
- if persistent.group_image_cat_04:
- hotspot (321, 365, 211, 139) action Show("cat4", transition=fade)
-
- ##########################################
- #-------------Gallery รวมภาพของ...หน้า Gallery กลุ่มสุนัข...-----------------
- ##########################################
- screen CG_Gallery_DOG:
- tag menu
- imagemap:
- ground 'menu/menu_gallery_ground_cat.png'
- idle 'menu/menu_gallery_idle_cat.png'
- hover 'menu/menu_gallery_hover_cat.png'
- selected_idle 'menu/menu_gallery_selected_idle_cat.png'
- selected_hover 'menu/menu_gallery_hover_cat.png'
- hotspot (607, 463, 193, 56) action Return() hover_sound "sound/click.wav"
-
- if persistent.group_image_cat_sum: #<กลุ่มภาพของ cat dog และ bunny ถูกปลดล๊อคครบ ภาพกลุ่มพิเศษ ??? ก็ถึงจะถูกปลดล๊อค
- if persistent.group_image_dog_sum:
- if persistent.group_image_bunny_sum:
- $ persistent.group_image_XXX_sum = True #<กลุ่มชุดรวมภาพ Gallery หน้าหลักของ XXX ถูกปลดล๊อค
-
- if persistent.group_image_cat_sum: #<กลุ่มภาพของ CAT จะเปิดใช้ได้ก็ต่อเมื่อ เงื่อนไข persistent.group_image_cat_sum เป็น True
-
- hotspot (607, 184, 193, 56) action ShowMenu("CG_Gallery_CAT") hover_sound "sound/click.wav"
-
- if persistent.group_image_XXX_sum: #<กลุ่มภาพของ ??? จะเปิดใช้ได้ก็ต่อเมื่อ เงื่อนไข persistent.group_image_XXX_sum เป็น True
-
- hotspot (607, 395, 193, 56) action ShowMenu("CG_Gallery_XXX") hover_sound "sound/click.wav"
-
- if persistent.group_image_bunny_sum: #<กลุ่มภาพของ BUNNY จะเปิดใช้ได้ก็ต่อเมื่อ เงื่อนไข persistent.group_image_bunny_sum เป็น True
-
- hotspot (607, 325, 193, 56) action ShowMenu("CG_Gallery_BUNNY") hover_sound "sound/click.wav"
-
- if persistent.group_image_dog_sum: #<กลุ่มภาพของ DOG จะเปิดใช้ได้ก็ต่อเมื่อ เงื่อนไข persistent.group_image_dog_sum เป็น True
-
- hotspot (607, 256, 193, 56) action ShowMenu("CG_Gallery_DOG") hover_sound "sound/click.wav"
- if persistent.group_image_dog_01:
- hotspot (75, 189, 208, 141) action Show("dog1", transition=fade)
-
- if persistent.group_image_dog_02:
- hotspot (321, 189, 208, 141) action Show("dog2", transition=fade)
-
- if persistent.group_image_dog_03:
- hotspot (75, 365, 208, 139) action Show("dog3", transition=fade)
-
- if persistent.group_image_dog_04:
- hotspot (321, 365, 211, 139) action Show("dog4", transition=fade)
-
- ##########################################
- #----------------Gallery รวมภาพของ...หน้า Gallery กลุ่มกระต่าย...-----------
- ##########################################
- screen CG_Gallery_BUNNY:
- tag menu
- imagemap:
- ground 'menu/menu_gallery_ground_cat.png'
- idle 'menu/menu_gallery_idle_cat.png'
- hover 'menu/menu_gallery_hover_cat.png'
- selected_idle 'menu/menu_gallery_selected_idle_cat.png'
- selected_hover 'menu/menu_gallery_hover_cat.png'
- hotspot (607, 463, 193, 56) action Return() hover_sound "sound/click.wav"
-
- if persistent.group_image_cat_sum: #<กลุ่มภาพของ cat dog และ bunny ถูกปลดล๊อคครบ ภาพกลุ่มพิเศษ ??? ก็ถึงจะถูกปลดล๊อค
- if persistent.group_image_dog_sum:
- if persistent.group_image_bunny_sum:
- $ persistent.group_image_XXX_sum = True #<กลุ่มชุดรวมภาพ Gallery หน้าหลักของ XXX ถูกปลดล๊อค
- if persistent.group_image_cat_sum: #<กลุ่มภาพของ CAT จะเปิดใช้ได้ก็ต่อเมื่อ เงื่อนไข persistent.group_image_cat_sum เป็น True
-
- hotspot (607, 184, 193, 56) action ShowMenu("CG_Gallery_CAT") hover_sound "sound/click.wav"
-
- if persistent.group_image_XXX_sum: #<กลุ่มภาพของ ??? จะเปิดใช้ได้ก็ต่อเมื่อ เงื่อนไข persistent.group_image_XXX_sum เป็น True
-
- hotspot (607, 395, 193, 56) action ShowMenu("CG_Gallery_XXX") hover_sound "sound/click.wav"
-
- if persistent.group_image_bunny_sum: #<กลุ่มภาพของ BUNNY จะเปิดใช้ได้ก็ต่อเมื่อ เงื่อนไข persistent.group_image_bunny_sum เป็น True
-
- hotspot (607, 325, 193, 56) action ShowMenu("CG_Gallery_BUNNY") hover_sound "sound/click.wav"
-
- if persistent.group_image_dog_sum: #<กลุ่มภาพของ DOG จะเปิดใช้ได้ก็ต่อเมื่อ เงื่อนไข persistent.group_image_dog_sum เป็น True
-
- hotspot (607, 256, 193, 56) action ShowMenu("CG_Gallery_DOG") hover_sound "sound/click.wav"
-
- if persistent.group_image_bunny_01:
- hotspot (75, 189, 208, 141) action Show("bunny1", transition=fade)
-
- if persistent.group_image_bunny_02:
- hotspot (321, 189, 208, 141) action Show("bunny2", transition=fade)
-
- if persistent.group_image_bunny_03:
- hotspot (75, 365, 208, 139) action Show("bunny3", transition=fade)
-
- if persistent.group_image_bunny_04:
- hotspot (321, 365, 211, 139) action Show("bunny4", transition=fade)
-
- ##########################################
- #-------------Gallery รวมภาพของ...หน้า Gallery กลุ่ม....???...--------------
- ##########################################
- screen CG_Gallery_XXX:
- tag menu
- imagemap:
- ground 'menu/menu_gallery_ground_cat.png'
- idle 'menu/menu_gallery_idle_cat.png'
- hover 'menu/menu_gallery_hover_cat.png'
- selected_idle 'menu/menu_gallery_selected_idle_cat.png'
- selected_hover 'menu/menu_gallery_hover_cat.png'
- hotspot (607, 463, 193, 56) action Return() hover_sound "sound/click.wav"
-
-
- if persistent.group_image_cat_sum: #<กลุ่มภาพของ CAT จะเปิดใช้ได้ก็ต่อเมื่อ เงื่อนไข persistent.group_image_cat_sum เป็น True
-
- hotspot (607, 184, 193, 56) action ShowMenu("CG_Gallery_CAT") hover_sound "sound/click.wav"
-
- if persistent.group_image_XXX_sum: #<กลุ่มภาพของ ??? จะเปิดใช้ได้ก็ต่อเมื่อ เงื่อนไข persistent.group_image_XXX_sum เป็น True
-
- hotspot (607, 395, 193, 56) action ShowMenu("CG_Gallery_XXX") hover_sound "sound/click.wav"
-
- if persistent.group_image_bunny_sum: #<กลุ่มภาพของ BUNNY จะเปิดใช้ได้ก็ต่อเมื่อ เงื่อนไข persistent.group_image_bunny_sum เป็น True
-
- hotspot (607, 325, 193, 56) action ShowMenu("CG_Gallery_BUNNY") hover_sound "sound/click.wav"
-
- if persistent.group_image_dog_sum: #<กลุ่มภาพของ DOG จะเปิดใช้ได้ก็ต่อเมื่อ เงื่อนไข persistent.group_image_dog_sum เป็น True
-
- hotspot (607, 256, 193, 56) action ShowMenu("CG_Gallery_DOG") hover_sound "sound/click.wav"
- if persistent.group_image_xxx_01:
- hotspot (75, 189, 208, 141) action Show("xxx1", transition=fade)
-
- if persistent.group_image_xxx_02:
- hotspot (321, 189, 208, 141) action Show("xxx2", transition=fade)
-
- if persistent.group_image_xxx_03:
- hotspot (75, 365, 208, 139) action Show("xxx3", transition=fade)
-
- if persistent.group_image_xxx_04:
- hotspot (321, 365, 211, 139) action Show("xxx4", transition=fade)
- </font>
คัดลอกไปที่คลิปบอร์ด 4. แล้วไปที่คำสั่ง File > Save... (หรือกดปุ่มCtrl+S) ให้บันทึกไฟล์นี้ในแฟ้มชื่อ game ในแฟ้มเกมส์ของเรา ตั้งชื่อไฟล์ว่าอะไรก็ได้ ได้หมด แต่สกุลจะต้องเป็น .rpyเท่านั้น เดี๋ยวโปรแกรมมันจะวิ่งหาไม่เจอ (อย่าลืมพิมพ์สกุล .rpy ต่อท้ายชื่อด้วยนะ)
ขั้นตอนที่ 5
- จากนั้นเราก็จะมาใส่โค๊ดที่ไฟล์script.rpy เพื่อปลดล๊อค หน้าเมนูหลักภาพ CG แต่ละตัวละคร และ CG ย่อยที่ซ่อนอยู่ภายในแต่ละภาพกันค่ะ
- ตัวอย่างการใส่โค๊ดที่ไฟล์ script.rpy
- # Declare images below this line, using the image statement.
- # eg. image eileen happy = "eileen_happy.png"
- # Declare characters used by this game.
- define p = Character('ปกิณกะ', color="#f8f092")
- image cat1 = "map/cat1.jpg"
- image cat2 = "map/cat2.jpg"
- image cat3 = "map/cat3.jpg"
- image cat4 = "map/cat4.jpg"
- image cat5 = "map/cat5.jpg"
- image cat6 = "map/cat6.jpg"
- # เริ่มเกมส์
- label start:
- scene black
- p "ในบรรดาสัตว์เลี้ยง อย่าง.. แมว สุนัข กระต่าย คุณชื่นชอบชนิดไหนเป็นพิเศษค่ะ?"
- menu:
- "ฉันชอบแมวมากที่สุด":
- jump cat
- #jump input_screen
- "ฉันชอบสุนัขมากที่สุด":
- jump dog
-
- "ฉันชอบกระต่ายมากที่สุด":
- jump bunny
-
- #ทางเลือกต่างๆ หลังจากคลิกเลือกคำตอบ
- #------------------------เลือก Cat ข้อ 1. -------------------------
- label cat:
- scene cat1
- $ persistent.group_image_cat_01 = True #<-----สั่งให้ภาพ cat1.jpg ที่หน้า CG_Gallery_CAT ถูกปลดล๊อค
- p "ฉันก็ชอบแมวเหมือนกันนะ...^^...."
- scene cat2
- $ persistent.group_image_cat_02 = True #<-----สั่งให้ภาพ cat2.jpg ที่หน้า CG_Gallery_CAT ถูกปลดล๊อค
- p "ฉันก็ชอบแมวเหมือนกันนะ...^^...."
-
- scene cat3
- $ persistent.group_image_cat_03 = True #<-----สั่งให้ภาพ cat3.jpg ที่หน้า CG_Gallery_CAT ถูกปลดล๊อค
- p "บางทีเราอาจจะมีนิสัยคล้ายๆกัน"
-
- $ persistent.group_image_cat_sum = True #<------กลุ่มชุดรวมภาพ Gallery หน้าหลักของ CAT ถูกปลดล๊อค
-
- $ persistent.extra_unlocked = True #สั่งให้ persistent.extra_unlocked = True (เป็นจริง)
- #เปิดใช้งานหน้า Bonus
- #jump end_cat
-
- #------------------------เลือก Dog ข้อ 2. -------------------------
- label dog:
- scene cat4 #ไม่มีภาพหมา เอาภาพแมวไปก่อน -*-
-
- $ persistent.group_image_cat_04 = True #<-----สั่งให้ภาพ cat4.jpg ที่หน้า CG_Gallery_CAT ถูกปลดล๊อค
-
- $ persistent.group_image_dog_01 = True #<-----สั่งให้ภาพ dog1.jpg ที่หน้า CG_Gallery_CAT ถูกปลดล๊อค
-
- $ persistent.group_image_dog_sum = True #<------กลุ่มชุดรวมภาพ Gallery หน้าหลักของ DOG ถูกปลดล๊อค
-
- p "ที่บ้านฉันเลี้ยงสุนัขไว้ 2 ตัวเป็นพันธุ์ชิวาว่าล่ะ .. :D... "
-
- $ persistent.extra_unlocked = True #สั่งให้ persistent.extra_unlocked = True (เป็นจริง)
- #เปิดใช้งานหน้า Bonus
- #jump end_dog
- #------------------------เลือก Bunny ข้อ 3. -------------------------
- label bunny:
- scene cat1 #ไม่มีภาพกระต่าย เอาภาพแมวไปก่อน -*-
- $ persistent.group_image_bunny_01 = True #<-----สั่งให้ภาพ bunny1.jpg ที่หน้า CG_Gallery_CAT ถูกปลดล๊อค
- p "ฉันเคยเลี้ยงกระต่ายไว้ที่บ้าน มันน่ารักมาก แต่มันก็มีนิสัยเสียตรงที่ชอบกัดสายไฟ -*- "
- $ persistent.group_image_bunny_sum = True #<------กลุ่มชุดรวมภาพ Gallery หน้าหลักของ BUNNY ถูกปลดล๊อค
- $ persistent.extra_unlocked = True #สั่งให้ persistent.extra_unlocked = True (เป็นจริง)
- #เปิดใช้งานหน้า Bonus
- #jump end_bunny
- return
คัดลอกไปที่คลิปบอร์ด
ตัวอย่างการใส่โค๊ด....และการสร้างเงื่อนไข
ที่ไฟล์ bonus จะเห็นว่าเรากำหนดโค๊ดเงื่อนไขเพื่อล๊อคภาพไว้ว่า
if persistent.group_image_cat_sum: #<----ชื่อด้านหลังเราจะกำหนดว่าอะไรก็ได้ขอเพียงให้มีคำว่า "if persistent." นำหน้ามันก็จะกลายเป็นการสร้างเงื่อนไขล๊อคภาพนั้นไว้ทันที
และเพื่อให้ภาพนั้นถูกปลดล๊อค (เป็น True) เราจำเป็นต้องใส่โค๊ดปลดล๊อคไว้ที่ไฟล์ script.rpy ด้วยไม่งั้นภาพต่างๆก็จะยังถูกล๊อคไว้ตลอดกาล ไม่แสดง และไม่สามารถคลิกเข้าไปดูได้การปลดล๊อคก็เพียงกำหนดให้เงื่อนไขมีค่าเท่ากัน True แค่นั้นเอง
$ persistent.group_image_cat_sum= True
***ถ้ามีภาพ CGใน Gallery 16 ภาพ เมื่อสร้างเงื่อนไขล๊อคครบ 16ภาพแล้ว อย่าลืมใส่โค๊ดเพื่อปลดล๊อคทั้ง 16 ภาพเอาไว้ด้วยนะค่ะ
เมื่อทำตามขั้นตอนทั้งหมดแล้วก็ลองรันโปรแกรมเพื่อTest โค๊ดคำสั่งต่างๆดูหลายๆรอบเพื่อความแน่ใจในขั้นตอนนี้ ข้าพเจ้าเองลองรันโปรแกรมหลายรอบแล้ว โค๊ดตัวคำสั่งทั้งหมด ยังไม่พบ Errorใดๆ มันจะติด Error อยู่อย่างเดียวคือภาพกลุ่ม dog.jpg, bunny.jpg , xxx.jpg ทั้งหมดไม่มี(ขี้เกียจหามาใส่) ถ้าไปเผลอคลิกเข้าโปรแกรมจะเด้ง นอกนั้นก็ไม่มีอะไรรันโปรแกรมได้ตามปกติค่ะ
------------------------------------------------------------------------
นอกจากนี้ จากโค๊ดทั้งหมดจะเห็นว่าข้าพเจ้าได้กำหนดให้มีภาพ CG ของตัวละครลับ(xxx)เพิ่มขึ้นมาด้วย โดยภาพของตัวละครลับนี้ข้าพเจ้ากำหนดให้มันถูกปลดล๊อคได้ก็ต่อเมื่อ หน้าหลักGalleryของcat dog bunny ถูกปลดล๊อคทั้ง 3 หน้าแล้ว(ที่มีคำว่า sum ต่อท้ายคือหน้ากาก Gallery หลักของแต่ละตัวละคร) (ซึ่งก็ไม่จำเป็นว่า ภาพ CG 01 ,02 ,03, 04 ฯลฯ ทุกภาพจะต้องถูกปลดผนึกจนครบ)
จากภาพด้านล่างเมื่อภาพใดถูกปลดล๊อค ตรงปุ่มจะมีไฟสีเขียวแสดงอยู่นั่นแสดงว่าเราสามารถคลิกเข้าไปดูกลุ่มภาพ CG ข้างในได้ และเมื่อ Gallery ของ cat dog และ bunny ถูกล๊อคแล้วก็จะส่งผลให้ xxx(???) ถูกปลดล๊อคตามด้วยเช่นกัน
(คลิกเข้าไปดูแต่ละภาพ)
อัพโหลดไฟล์ตัวอย่างที่ใช้สอนในประกอบบทความ
Test Gallery Image Map-1.0-win.zip
(9.52 MB, ดาวน์โหลดแล้ว: 458)
|