Thaigraph

 

   

ค้นหา
Thaigraph หน้าฟอรั่ม Ren'Py [renpy] วิธีแสดงคะแนนตัวเลขให้ ...
ดู: 1496|ตอบ: 7
go

[renpy] วิธีแสดงคะแนนตัวเลขให้เป็น Image

Rank: 7Rank: 7Rank: 7

โพสต์เมื่อ 8-5-2015 05:38 |แสดงโพสต์ทั้งหมด


[renpy] วิธีแสดงคะแนนตัวเลขให้เป็น Image


การทำงานของโค๊ดคือ คุณจะต้องสร้างตัวแปรแทนค่าหลักสิบ และัตวแปรแทนค่าหลักหน่วยขึ้นมา เพื่่อให้มันทำหน้าที่ดึงภาพตัวเลขแต่ละตัวขึ้นมาแสดงให้ถูกต้องค่ะ (ในกรณีถ้าระดับคะแนนเต็มที่ค่าหลักร้อย ก็ต้องสร้างตัวแปรแทนค่าหลักร้อยขึ้นมาด้วยเช่นกันค่ะ)

อย่างแรกเลยคือต้องสร้างภาพตัวเลขขึ้นมาก่อน โปรแกรมที่ใช้สร้างก็มีหลายโปรแกรมนะคะ แต่ที่นิยมใช้กันมากที่สุดก็โปรแกรม Photoshop  วิธีทำ Text แบบในภาพตัวอย่างศึกษาได้จากบทความนี้ค่ะ วิธีทำ Text นูนใสด้วย Photoshop (เฉพาะสมาชิกระดับ VIP)
(ภาพตัวเลขต้องบันทึกเป็นไฟล์ .PNG และควรให้พื้นหลังเป็นแบบโปร่งใสนะคะ)


- แล้วก็บันทึกไฟล์โดยแยกเป็นภาพละตัวเลข (มีตัวอย่างโค๊ดเกมส์และภาพตัวเลขให้โหลดที่ลิงค์ด้านล่างค่ะ)




- จากนั้นให้นำโค๊ดด้านล่างนี้ไปใส่ที่ล่างสุดของไฟล์ options.rpy นะคะ
CODE:
  1. init:
  2.     $ score_heart = 0
  3.     $ show_score = True
  4.    
  5.     ##สร้างตัวแปรเพื่อนำ score_heart มาคำนวณหาผลลัพธ์
  6.     $ num_two = 0  #num_two (แทนเลขหลักสิบ)
  7.     $ num_one = 0  # num_one (แทนเลขหลักหน่วย)

  8.     python hide:
  9.         def score_heart():
  10.             if show_score:

  11.                 if score_heart <= 25:

  12.                     ui.image("image/l.png",xalign=0.85, yalign=0.06)
  13.                     ui.image("image/2.png",xalign=0.90, yalign=0.06)
  14.                     ui.image("image/5.png",xalign=0.95, yalign=0.06)


  15.                 #-------------------num_two หาตัวเลขแทนเลขหลักสิบ----------------#   
  16.                     if num_two == 1:
  17.                          ui.image("image/1.png",xalign=0.75, yalign=0.06)
  18.                     if num_two == 2:
  19.                          ui.image("image/2.png",xalign=0.75, yalign=0.06)
  20.                     if num_two == 3:
  21.                          ui.image("image/3.png",xalign=0.75, yalign=0.06)
  22.                     if num_two == 4:
  23.                          ui.image("image/4.png",xalign=0.75, yalign=0.06)
  24.                     if num_two == 5:
  25.                          ui.image("image/5.png",xalign=0.75, yalign=0.06)
  26.                     if num_two == 6:
  27.                          ui.image("image/6.png",xalign=0.75, yalign=0.06)
  28.                     if num_two == 7:
  29.                          ui.image("image/7.png",xalign=0.75, yalign=0.06)
  30.                     if num_two == 8:
  31.                          ui.image("image/8.png",xalign=0.75, yalign=0.06)
  32.                     if num_two == 9:
  33.                          ui.image("image/9.png",xalign=0.75, yalign=0.06)

  34.                         
  35.                 #-------------------num_one หาตัวเลขแทนเลขหลักหน่วย----------------#  
  36.                     
  37.                     if num_one == 1:
  38.                          ui.image("image/1.png",xalign=0.80, yalign=0.06)
  39.                     if num_one == 2:
  40.                          ui.image("image/2.png",xalign=0.80, yalign=0.06)
  41.                     if num_one == 3:
  42.                          ui.image("image/3.png",xalign=0.80, yalign=0.06)
  43.                     if num_one == 4:
  44.                          ui.image("image/4.png",xalign=0.80, yalign=0.06)
  45.                     if num_one == 5:
  46.                          ui.image("image/5.png",xalign=0.80, yalign=0.06)
  47.                     if num_one == 6:
  48.                          ui.image("image/6.png",xalign=0.80, yalign=0.06)
  49.                     if num_one == 7:
  50.                          ui.image("image/7.png",xalign=0.80, yalign=0.06)
  51.                     if num_one == 8:
  52.                          ui.image("image/8.png",xalign=0.80, yalign=0.06)
  53.                     if num_one == 9:
  54.                          ui.image("image/9.png",xalign=0.80, yalign=0.06)
  55.                     if num_one == 0:
  56.                          ui.image("image/0.png",xalign=0.80, yalign=0.06)
  57.                         
  58.         config.overlay_functions.append(score_heart)
คัดลอกไปที่คลิปบอร์ด


- ต่อไปก็ให้นำโค๊ดด้านล่างนี้ไปใส่ที่ไฟล์ script.rpy ค่ะ
CODE:

  1. define b = Character('กวี', color="#f8f092")

  2. label start:
  3.     scene black
  4. #คำถามที่ 1
  5. menu:
  6.     b "พยัญชนะในภาษาอังกฤษตัว \"ph\" เมื่อออกเสียง ผสมกัน
  7.         ในภาษาไทยจะเท่ากับพยัญชนะตัวอะไร ?"
  8.    
  9.     "ออกเสียงเป็นตัว ช.ช้าง":
  10.         pass
  11.     "ออกเสียงเป็นตัว ฟ.ฟัน":
  12.         $ score_heart += 5
  13.         $ num_two = score_heart // 10
  14.         $ num_one = score_heart - (num_two *10)
  15.         pass
  16.     "ออกเสียงเป็นตัว พ.พาน และ ฮ.นกฮูก":
  17.         pass
  18.    
  19. #คำถามที่ 2
  20. menu:
  21.     b "พยัญชนะในภาษาอังกฤษตัว \"aew\" เมื่อออกเสียง ผสมกัน
  22.         ในภาษาไทยจะเท่ากับสระตัวอะไร ?"
  23.    
  24.     "สระ เ-" :
  25.         $ score_heart -= 10
  26.         if  score_heart <= 0:
  27.             $ score_heart = 0
  28.         pass
  29.     "สระ แ-ว ":
  30.         $ score_heart += 10
  31.         $ num_two = score_heart // 10
  32.         $ num_one = score_heart - (num_two *10)
  33.         pass
  34.     "สระ แ- ":
  35.         $ score_heart -= 10
  36.         if  score_heart <= 0:
  37.             $ score_heart = 0
  38.         pass
  39.    
  40. #คำถามที่ 3 (คำถามสุดท้าย)
  41. menu:
  42.     b "พยัญชนะในภาษาอังกฤษตัว \"oei\" เมื่อออกเสียง ผสมกัน
  43.     ในภาษาไทยจะเท่ากับสระตัวอะไร ?"
  44.    
  45.     "สระ ไ- ":
  46.         $ score_heart -= 10
  47.         if  score_heart <= 0:
  48.             $ score_heart = 0
  49.         jump score
  50.     "สระ เ-า":
  51.         $ score_heart -= 10
  52.         if  score_heart <= 0:
  53.             $ score_heart = 0
  54.         jump score
  55.         
  56.     "สระ เ-ย":
  57.         $ score_heart += 10
  58.         $ num_two = score_heart // 10
  59.         $ num_one = score_heart - (num_two *10)
  60.         jump score
  61. #---------สรุปผล--------------------
  62. label score:
  63.    
  64.     b "คุณได้ [score_heart!d] คะแนน!!!"
  65.   
  66. return
คัดลอกไปที่คลิปบอร์ด

(ผลลัพธ์หลังเทสเกมส์  คะแนนจะแสดงออกมาเป็นภาพตัวเลขสวยสดใสน่าดูกว่าตัวอักษรแข็งๆ เป็นไหนๆ)





ตัวอย่างโค๊ดกับไฟล์ภาพตัวเลข(อยู่ในแฟ้มข้างใน) โหลดได้ที่นี่ค่ะ [hide][/hide]

แล้วพบกันใหม่บทความหน้านะคะ ขอให้สนุกกับการทำเกมส์ค่ะ

บทความโดย NOOKFUFU2
(ขอสงวนสิทธิ์ให้เผยแพร่เฉพาะในเว็บไทยกราฟเท่านั้น!!!)





ไฟล์แนบ: คุณจำเป็นต้องเข้าสู่ระบบก่อนจึงจะสามารถดูและดาวน์โหลดไฟล์แนบได้ หากยังไม่มีแอคเคานต์หรือยังไม่ได้เป็นสมาชิก กรุณาสมัครสมาชิก
บางบทความคุณจำเป็นต้องสมัครสมาชิกแบบ VIP และ SUPERVIP ถึงจะเข้าอ่านบทความได้

Rank: 1

โพสต์เมื่อ 21-5-2015 19:47 |แสดงโพสต์ทั้งหมด
ขอบคุณมากนะครับ
กำลังจะทำเกมแนวถามตอบพอดีเลย

Rank: 1

โพสต์เมื่อ 6-8-2015 18:31 |แสดงโพสต์ทั้งหมด

ขอบคุณมากค่ะ

Rank: 1

โพสต์เมื่อ 27-9-2015 12:40 |แสดงโพสต์ทั้งหมด
ชอบหลายๆ

Rank: 1

โพสต์เมื่อ 26-12-2015 04:01 |แสดงโพสต์ทั้งหมด

Rank: 1

โพสต์เมื่อ 23-6-2016 13:19 |แสดงโพสต์ทั้งหมด
ต้องลอง

Rank: 1

โพสต์เมื่อ 31-8-2017 11:21 |แสดงโพสต์ทั้งหมด
555555555555555555555555555555

Rank: 1

โพสต์เมื่อ 7 วันก่อน |แสดงโพสต์ทั้งหมด
ขอบคุณค่ะ
คุณต้องเข้าสู่ระบบก่อนจึงจะสามารถตอบกลับ เข้าสู่ระบบ | สมัครสมาชิก


Thaigraph

GMT+7, 22-9-2019 04:39 , Processed in 0.104905 second(s), 22 queries .

Powered by Discuz! X1.5

© 2001-2010 Comsenz Inc. Thai Language by DiscuzThai! Team.

Top 10 Best Sellers in Clothing for 2017 Top 10 Best Sellers in Clothing Best Sellers in Clothing
Top 10 Best Sellers in Books reviewer 2017 Top 10 Best Sellers in Books Best Sellers in Books