nooknazha โพสต์ 2018-6-22 18:06:18

[Renpy] 37. วิธีเพิ่ม - ลดคะแนนคำถามแบบ Text

แก้ไขครั้งสุดท้ายโดย nooknazha เมื่อ 2018-6-22 18:09


37. วิธีเพิ่ม - ลดคะแนนคำถามแบบ Text

เป็นการให้คะแนนเวลาตอบคำถามแบบธรรมดานะคะไม่มีลูกเล่นอะไรซับซ้อน
- ให้นำโค๊ดด้านล่างนี้ไปใส่ที่ล่างสุดของไฟล์ options.rpy นะคะCODE:
init:
    $ max_score_heart = 25
    $ score_heart = 0
    $ show_score = True
    python hide:
      def score_heart():
            if show_score:
               
                ui.text("%d/%d" % (score_heart, max_score_heart ), xalign=0.95,yalign=0.015, size=20)
      
      config.overlay_functions.append(score_heart)
- ต่อไปก็ให้นำโค๊ดด้านล่างนี้ไปใส่ที่ไฟล์ script.rpy ค่ะ
CODE:
define b = Character('กวี', color="#f8f092")

label start:
    scene black

#คำถามที่ 1
menu:
    b "พยัญชนะในภาษาอังกฤษตัว \"ph\" เมื่อออกเสียง ผสมกัน
      ในภาษาไทยจะเท่ากับพยัญชนะตัวอะไร ?"
   
    "ออกเสียงเป็นตัว ช.ช้าง":
      pass
    "ออกเสียงเป็นตัว ฟ.ฟัน":
      $ score_heart += 5
      pass
    "ออกเสียงเป็นตัว พ.พาน และ ฮ.นกฮูก":
      pass
   
#คำถามที่ 2
menu:
    b "พยัญชนะในภาษาอังกฤษตัว \"aew\" เมื่อออกเสียง ผสมกัน
      ในภาษาไทยจะเท่ากับสระตัวอะไร ?"
   
    "สระ เ-" :
      $ score_heart -= 10
      ifscore_heart <= 0:
            $ score_heart = 0
      pass
    "สระ แ-ว ":
      $ score_heart += 10
      pass
    "สระ แ- ":
      $ score_heart -= 10
      ifscore_heart <= 0:
            $ score_heart = 0
      pass
   
#คำถามที่ 3 (คำถามสุดท้าย)
menu:
    b "พยัญชนะในภาษาอังกฤษตัว \"oei\" เมื่อออกเสียง ผสมกัน
    ในภาษาไทยจะเท่ากับสระตัวอะไร ?"
   
    "สระ ไ- ":
      $ score_heart -= 10
      ifscore_heart <= 0:
            $ score_heart = 0
      jump score
    "สระ เ-า":
      $ score_heart -= 10
      ifscore_heart <= 0:
            $ score_heart = 0
      jump score
      
    "สระ เ-ย":
      $ score_heart += 10
      jump score
#---------สรุปผล--------------------
label score:
   
    b "คุณได้ คะแนน!!!"

return
(ผลลัพธ์หลังเทสเกมส์Text แสดงคะแนนโชว์มาให้เห็นแล้วแต่ก็ดูเรียบๆไปหน่อย ^^)

จากผลลัพธ์ข้างต้นคุณจะเห็นว่าตัวเลขคะแนนเป็นแบบธรรมดาๆ ไม่ค่อยน่าสนใจเท่าไหร่ถ้าคุณอยากจะทำให้มันดูน่าสนใจขึ้นอีกนิดก็สามารถทำได้โดยเพิ่มโค๊ดเปลี่ยนสีเน้นตัวเข้ม และกำหนดขนาดของตัวอักษรใหม่ลงไปได้ค่ะ (ดูโค๊ดด้านล่างประกอบ ตรง ui.text.... จะเห็นว่ามีโค๊ดเพิ่มขึ้นมาอีกนิดหน่อย) <font size="4">
init:
    $ max_score_heart = 25
    $ score_heart = 0
    $ show_score = True
    python hide:
      def score_heart():
            if show_score:
               
                ui.text("{color=#4f8b51}{size=36}{b} %d/%d {/b}{/size}{/color}" % (score_heart, max_score_heart ), xalign=0.95,yalign=0.015, size=20)
      
      config.overlay_functions.append(score_heart)
</font>{color=#4f8b51}...{/color} ###ไว้กำหนดโค๊ดสีใหม่ให้กับตัวอักษร
{size=36}...{/size} ##ไว้กำหนดขนาดให้กับตัวอักษร
{b}...{/b} ##กำหนดให้ตัวอักษรเป็นตัวเข้ม


ลูกเล่นในการปรับแต่งตัวอักษรยังมีอีกหลายคำสั่งนะคะอันนี้แค่คร่าวๆก่อน ข้าพเจ้าแค่ต้องการทำให้รู้ว่ามันใส่เพิ่มตรงนี้ได้ด้วยเท่านั้นเอง

(ผลลัพธ์หลังเทสเกมส์อีกครั้งตัวเลขคะแนนดูดีขึ้นมาหน่อยแล้ว^^)

***************************************

บทความโดย นุ้ก
ขอจบบทความแค่เพียงเท่านี้ แล้วพบกันใหม่บทความหน้าค่ะ ^^
(ขอสงวนสิทธิ์อนุญาตให้เผยแพร่เฉพาะในเว็บ www.graphicfufu.comเท่านั้น)

หน้า: [1]
ดูในรูปแบบกติ: [Renpy] 37. วิธีเพิ่ม - ลดคะแนนคำถามแบบ Text