เห็นยังไม่มีใครสอน วันนี้ผมเลยจะมาสอน การโชว์หลอดคะแนน และเลขคะแนน บนหน้าจอ
จริงๆมันก็มีสอนอยู่แล้วครับ ในเกมตัวอย่างของเขา แต่มันไม่ได้ละเอียดมากนัก
ผมไม่มีความรู้เกียวกับการเขียนสคิปเลยแม้แต่นิดเดียว แค่จำๆที่เขาสอนๆมานะครับ
การใช้คำพูดของผมก็เลยอาจบ้านๆไปนิด 555+
การทำเกมพวก simulator การจำลองใช้ชีวิต
ก็ต้องมีหลอดพลังงานโชว์ให้ดู มีการลดเมื่อทำกิจกรรม และมีการเติมให้เต็มเวลานอน
1.อย่างแรก หลอด HP (ผมเอามาจากในเกมตัวอย่างที่เขาสอนระบบ rpg )
เอาโค้ดนี้ไปวางไว้ ด้านบนหน้า script
Code:
default player_hp = 50 # จำนวน hp เริ่มต้น
default player_hp_max = 99 # จำนวน hp สูงสุด
screen single_stat(hp, hp_max, xalign):
frame:
background Solid("#000000")
xalign 0.005 ypos 5 # ตำแน่งที่ว่าง
vbox:
spacing 5
hbox:
text _("{color=#FF0000}PW{/color}"): # อักษรตัวหน้า และ ตำแน่งที่ว่าง
min_width 40
yalign 0.5
bar:
xalign 0.1 ypos 5 # ตำแหน่งหลอดhp
value AnimatedValue(hp, hp_max, 1.0)
xmaximum 180
ysize 26
text " [hp]/[hp_max]": # เลขที่จะแสดงจำนวนhp และ HP สูงสุด
yalign 0.5
screen stats():
use single_stat(player_hp, player_hp_max, 0.0)
การใช้งาน จะให้เปิดโชว์ตอนไหนก็เอาโค้ดนี้ไปวาง
Code:
show screen stats # เปิด
hide screen stats # ปิด
2.ไอค่อนตัวเลขตามภาพตัวอย่างก็เหมือนๆกัน ครับ แค่ลบหลอดแสดงหลอดพลังออก
ตัวอย่างตามรูปของผม ไอค่อนอาหาร และ ไอค่อนวันที่
เอาโค้ดนี้ไปวางไว้ ด้านบนหน้า script
Code:
default player_food = 20 #จำนวนอาหารเริ่มต้น
default player_food_max = 400 #จำนวนอาหารสูงสุด
default player_Day = 1 #จำนวนวันที่เริ่มต้น
screen single_food(food, food_max, Day, xalign):
frame:
background Solid("#99000000")
xalign 0.005 ypos 55 # ตำแน่งที่ว่าง
vbox:
add "logo base" # ชื่อรูปไอค่อน
text " {color=#00FF00}[Day]{/color}": # ตัวเลขที่จะแสดง
yalign 0.5
frame:
background Solid("#99000000")
xalign 0.18 ypos 55
vbox:
add "logo base2"
text " {color=#00FF00}[food]/[food_max]{/color}":
yalign 0.5
screen food():
use single_food(player_food, player_food_max, player_Day, 0.0)
การใช้งานก็เอาโค้ดนี้ไปวางตำแหน่งการใช้งาน มันก็จะแสดงไอค่อนให้เห็น
Code:
show screen food # เปิด
hide screen food # ปิด
สำหรับการเพิ่มและลดคะแนนพวกนี้ โดยที่มันจะต้องไม่เกินค่าที่เรากำหนดไว้
ก็ทำง่ายครับใช้สองโค้ดด้านล่างก็พอแล้ว
Code:
# หมายถึงเพิ่มhp 80 แต่รวมแล้วไม่เกิน 99
$ player_hp += 80
if player_hp >= 99:
$ player_hp = 99
# หมายถึงลดhp 80 แต่รวมแล้วไม่ตำกว่า 0
$ player_hp -= 80
if player_hp <= 0:
$ player_hp = 0
สำหรับการเช็คเงื่อนไข ตัวเลขพวกนี้นะครับ
เช่น เราต้องการจะไปจีบสาว ใช้พลังงาน 90 หน่วย ก็จะได้ประมาณนี้
Code:
if player_hp <= 89: # ถ้าพลังไม่ถึง 89 จะโดนแจ้งเตือนว่าพลังไม่พอ
e9 "พลังของคุณไม่เพียงพอ !"
jump village
else: # ถ้ามีพลัง 90 ขึ้นไปก็จะเริ่มจีบได้ และมีการลบ hp ออก 90 ด้วย
$ player_hp -= 90
if player_hp <= 0:
$ player_hp = 0
j "สวัสดี! "
ตัวอย่างเกมการใช้โค้ด ที่ผมลองทำ
Code:
http://www.mediafire.com/file/nqjxj6qh0gbfxvp/HunterloveZ-1.0-pc.zip/file