Unless you know how long the game loop will be on every computer, maki การแปล - Unless you know how long the game loop will be on every computer, maki ไทย วิธีการพูด

Unless you know how long the game l

Unless you know how long the game loop will be on every computer, making your sleep a constant is generally bad practice. If you know that you want 2fps, a good way to keep it in line is get the time at the start of the game loop, then at the end, find out the difference, and use that to calculate the amount of time needed to sleep to keep the step the same. e.g, If the loop takes 0.1s, and you want 2fps, then put in the sleep of 0.4s.

Other than that, I'd possibly say that you need to have another variable alongside food which is snakeLength or something. I don't know if you're printing out the score on the screen, but if you are keeping track of the score, I'd imagine that you want it to start at 0, as opposed to 3, and 1 more int isn't that big a deal when you get better readability.

Possibly consider making direction an enum, with UP, DOWN, LEFT and RIGHT, because right now it's a little tricky to follow, and you wouldn't need to change too much of the logic, as enums are ints with some extra stuff, so you can easily compare in the way that you're doing now. Having said that, I'm not sure I follow what your direction values relate to, as I don't see anywhere that direction is set to 5, so that check seems unnecessary.

In your generateFood function, you access map directly, where you've made a function which does that job exactly in getMapValue, so you might want to consider using that, as at some point in the future you may decide to make it a Map class and then you'll run into errors with accessing private variables (I'd hope!).

Other than this, things seem pretty good, so I'm going to start nit-picking :P. I'd just suggest little things like alphabetizing your #includes and function prototypes. It's not that big a deal since you have 2, but something to bear in mind. As well as that, your clearScreen() and printMap() feels a lot like a Draw(), so you could possibly wrap them both up in that function, and just call init, update, draw and cleanup (when you're doing object loading and using pointers and whatnot) since you seem to be nearly following the game loop pattern (as an aside, if you are planning to make more games, read that entire book, it's a thing of beauty), and reading that article better explains my point about sleep.
0/5000
จาก: -
เป็น: -
ผลลัพธ์ (ไทย) 1: [สำเนา]
คัดลอก!
ยกเว้นว่าคุณทราบระยะห่วงเกมจะในคอมพิวเตอร์ทุกเครื่อง การนอนหลับของคุณคงคือ ปฏิบัติดีโดยทั่วไป ถ้าคุณทราบว่า คุณต้องการ 2fps วิธีที่ดีเก็บไว้ในบรรทัดคือ ดูเวลาเริ่มต้นของลูปเกม แล้วจบ ค้นหาความแตกต่าง และที่ใช้เพื่อคำนวณระยะเวลาจำเป็นสำหรับการนอนหลับเพื่อให้ขั้นตอนเดียวกัน เช่น ถ้าวงใช้เวลา 0.1 s และคุณต้อง 2fps แล้วใส่ในการนอนหลับของ 0.4sนอกเหนือจากที่ ฉันอาจจะพูดว่า คุณต้องมีตัวแปรอื่นควบคู่ไปกับอาหารที่เป็น snakeLength หรือบางอย่าง ผมไม่ทราบว่า คุณกำลังพิมพ์ออกคะแนนบนหน้าจอ แต่ถ้าคุณกำลังติดตามคะแนน ฉันคิดว่า คุณต้องการเริ่มต้นที่ 0 เมื่อเทียบกับ 3 และ 1 int เพิ่มเติมไม่ว่า ใหญ่การจัดการเมื่อคุณได้อ่านที่ดีอาจจะพิจารณาทำให้ทิศทาง enum ขึ้น ลง ซ้าย และ ขวา เนื่องจากเหมาะสมตอนนี้ ก็ไปทำตามหน่อย และคุณจะไม่ต้องเปลี่ยนมากเกินไป ของตรรกะ enums เป็น เบสกับบางสิ่งที่พิเศษ เพื่อให้คุณสามารถเปรียบเทียบในแบบที่คุณกำลังทำอยู่ได้ มีกล่าวว่า ฉันไม่แน่ใจว่าฉันตามค่าของทิศทางที่สัมพันธ์กับ ไม่เห็นได้ว่า ทิศทางถูกกำหนดเป็น 5 เพื่อให้ตรวจสอบดูเหมือนว่าไม่จำเป็นในฟังก์ชันของคุณ generateFood คุณสามารถเข้าถึงแผนที่โดยตรง ที่คุณได้ทำฟังก์ชั่นที่ไม่ว่า งานตรงใน getMapValue ดังนั้นคุณอาจต้องพิจารณาใช้ที่ ขณะที่บางจุดในอนาคตคุณอาจตัดสินใจทำระดับแผนที่ และจากนั้น คุณจะทำงานเป็นข้อผิดพลาดการเข้าถึงตัวแปรส่วนตัว (จะหวัง)นอกเหนือจากนี้ สิ่งที่ดูเหมือนจะสวยดี ดังนั้นผมจะเริ่มเก็บนิด: P. จะแค่แนะนำสิ่งเล็ก ๆ น้อย ๆ เช่น alphabetizing ต้นแบบ #includes และการทำงานของคุณ ไม่ว่าการจัดการเนื่องจากคุณมี 2 แต่สิ่งที่จำไว้ เช่นเดียวกับที่ clearScreen() และ printMap() ของคุณรู้สึกมากเช่น Draw() ดังนั้นคุณสามารถอาจจะตัดพวกเขาทั้งสองขึ้นในที่ทำงาน และโทรเริ่มต้น ปรับปรุง วาด และล้างข้อมูล (เมื่อคุณกำลังทำการโหลดวัตถุและการใช้ตัวชี้และมัน) ตั้งแต่คุณดูเหมือนจะ เกือบเป็นไปรูปแบบเกมวนรอบ (เป็นกัน ถ้าคุณวางแผนที่จะทำเกมมากขึ้น อ่านหนังสือเล่มนั้นทั้งหมด มันเป็นสิ่งสวยงาม), และอ่านบทความที่ดีอธิบายจุดของฉันเกี่ยวกับการนอนหลับ
การแปล กรุณารอสักครู่..
ผลลัพธ์ (ไทย) 2:[สำเนา]
คัดลอก!
จนกว่าคุณจะรู้ว่านานแค่ไหนห่วงเกมจะอยู่ในคอมพิวเตอร์ทุกเครื่องทำให้การนอนหลับของคุณอย่างต่อเนื่องคือการปฏิบัติที่ไม่ดีโดยทั่วไป ถ้าคุณรู้ว่าคุณต้องการ 2fps เป็นวิธีที่ดีที่จะให้มันอยู่ในแนวเดียวกันคือการได้รับเวลาที่เริ่มต้นของห่วงเกมแล้วในตอนท้ายค้นหาความแตกต่างและใช้ในการคำนวณระยะเวลาที่จำเป็นในการนอนหลับ เพื่อให้ขั้นตอนเดียวกัน เช่นถ้าห่วงเวลา 0.1s และคุณต้องการ 2fps แล้วใส่ในการนอนหลับของ 0.4s ได้. อื่น ๆ กว่าที่ฉันอาจจะบอกว่าคุณจะต้องมีตัวแปรอื่นควบคู่ไปกับอาหารซึ่งเป็น snakeLength หรือสิ่งที่ ผมไม่ทราบว่าคุณกำลังพิมพ์ออกคะแนนบนหน้าจอ แต่ถ้าคุณกำลังติดตามความเคลื่อนไหวของคะแนนผมคิดว่าคุณต้องการที่จะเริ่มต้นที่ 0 เมื่อเทียบกับ 3, และอื่น ๆ อีก 1 ISN int 'T ที่จัดการใหญ่เมื่อคุณได้รับอ่านได้ง่ายขึ้น. อาจจะพิจารณาการทำทิศทาง enum ที่มีขึ้นลงซ้ายและขวาเพราะตอนนี้ก็ยุ่งยากเล็ก ๆ น้อย ๆ ที่จะปฏิบัติตามและคุณจะไม่จำเป็นต้องเปลี่ยนมากเกินไปของ ตรรกะเป็น enums มี ints กับบางสิ่งที่พิเศษเพื่อให้คุณได้อย่างง่ายดายสามารถเปรียบเทียบในทางที่คุณกำลังทำอยู่ตอนนี้ ต้องบอกว่าผมไม่แน่ใจว่าผมทำตามสิ่งที่มีค่าทิศทางของคุณที่เกี่ยวข้องกับการที่ผมไม่เห็นได้ทุกทิศทางที่ถูกกำหนดเป็น 5 เพื่อตรวจสอบที่ดูเหมือนว่าไม่จำเป็น. ในการทำงาน generateFood ของคุณคุณเข้าถึงแผนที่โดยตรงที่คุณ ได้ทำให้ฟังก์ชั่นที่จะทำงานตรง getMapValue ว่าดังนั้นคุณอาจต้องการพิจารณาใช้ว่าเป็นที่จุดในอนาคตบางอย่างที่คุณอาจตัดสินใจที่จะทำให้มัน Class แผนที่และจากนั้นคุณจะใช้เป็นข้อผิดพลาดกับการเข้าถึงตัวแปรส่วนตัว (ฉันหวัง!). นอกเหนือจากนี้สิ่งที่ดูเหมือนดีงามดังนั้นฉันจะเริ่มต้นจู้จี้จุกจิก: P ฉันต้องการเพียงแค่แนะนำสิ่งเล็ก ๆ น้อย ๆ เช่น alphabetizing #includes และต้นแบบการทำงานของคุณ มันไม่ใช่ว่าจัดการใหญ่เนื่องจากคุณมี 2 แต่สิ่งที่ต้องจำไว้ เช่นเดียวกับที่ clearScreen ของคุณ () และ printMap () รู้สึกมากเช่นวาด () ดังนั้นคุณอาจจะตัดพวกเขาทั้งสองขึ้นมาในฟังก์ชั่นนั้นและเพียงโทร init ปรับปรุงวาดและการทำความสะอาด (เมื่อคุณกำลังทำ โหลดวัตถุและการใช้ตัวชี้และ whatnot) ตั้งแต่คุณดูเหมือนจะเกือบดังต่อไปนี้รูปแบบเกมห่วง (เช่นกันถ้าคุณกำลังวางแผนที่จะทำให้เกมมากขึ้นอ่านว่าหนังสือทั้งเล่มก็เรื่องของความงาม) และอ่านบทความที่ดีกว่า อธิบายจุดของฉันเกี่ยวกับการนอนหลับ







การแปล กรุณารอสักครู่..
ผลลัพธ์ (ไทย) 3:[สำเนา]
คัดลอก!
ถ้าคุณทราบวิธียาวห่วงเกมจะในคอมพิวเตอร์ทุกเครื่อง ทำให้การนอนหลับของคุณคงเป็นวิธีปฏิบัติโดยทั่วไปจะไม่ดี ถ้าคุณรู้ว่าคุณต้องการ 2fps เป็นวิธีที่ดีที่จะเก็บไว้ในบรรทัดจะได้รับเวลาที่เริ่มต้นของเกม ห่วง ตอนจบ ดูความแตกต่าง และใช้เพื่อคำนวณระยะเวลาที่ต้องนอนรักษาในขั้นตอนเดียวกัน เช่น ถ้าห่วงจะ 0.1s และคุณต้องการ 2fps แล้วใส่นอนของ 0.4s .นอกเหนือจากนั้น ผมอาจจะพูดได้ว่าคุณต้องการให้มีตัวแปรอื่น ๆอาหารที่ snakelength หรืออะไรสักอย่าง ฉันไม่รู้ถ้าคุณพิมพ์ออกมาคะแนนบนจอ แต่ถ้าคุณติดตามคะแนน ผมจะจินตนาการว่าคุณต้องการที่จะเริ่มต้นที่ 0 เมื่อเทียบกับ 3 และอีก 1 int ไม่ใช่ปัญหาใหญ่เมื่อคุณได้รับดีกว่าอ่าน .อาจจะพิจารณาทิศทางการนัม มี ขึ้น ลง ซ้าย และ ขวา เพราะตอนนี้มันเป็นเพียงเล็กน้อยหากินเพื่อติดตาม และคุณจะไม่ต้องเปลี่ยนเยอะ ตรรกะเป็น enums เป็น ints กับสิ่งพิเศษบางอย่างเพื่อให้คุณสามารถเปรียบเทียบในลักษณะที่คุณกำลังทำอยู่ตอนนี้ มีกล่าวว่า , ผมไม่แน่ใจว่าผมทำตามทิศทางค่า เกี่ยวข้องกับ ฉันไม่ได้เห็นทิศทางที่ถูกตั้งค่าเป็น 5 เพื่อให้เช็คดูที่ไม่จำเป็นในการทำงาน generatefood ของคุณ คุณสามารถเข้าถึงแผนที่โดยตรง ที่คุณได้สร้างฟังก์ชันซึ่งไม่งานที่ถูกต้องใน getmapvalue ดังนั้นคุณอาจต้องการพิจารณาใช้เป็นบางจุด ในอนาคตคุณอาจตัดสินใจที่จะทำให้มันเป็นแผนที่เรียนแล้วคุณจะเจอข้อผิดพลาดกับการเข้าถึงตัวแปรส่วนบุคคล ( ฉันหวังว่า ! ) .นอกจาก นี้ ทุกอย่างดูเหมือนดีดังนั้นฉันจะเริ่มต้นมันรับ : P ผมก็แนะนำสิ่งเล็ก ๆชอบตัวอักษรของคุณและ # รวมถึงฟังก์ชันต้นแบบ ก็ไม่ขนาดนั้นหรอก เพราะคุณมี 2 แต่สิ่งที่ต้องระลึกไว้ในใจ เช่นเดียวกับที่คุณ clearscreen() printmap() และรู้สึกเหมือน draw() ดังนั้นคุณจะตัดพวกเขาทั้งสองขึ้นในการทำงาน และเรียก init , ปรับปรุงการวาดและการทำความสะอาด ( เมื่อคุณทำวัตถุโหลดและใช้ชี้และ whatnot ) เพราะดูเหมือนคุณจะเกือบตามห่วงเกมรูปแบบ ( เป็น การหันเห , ถ้าคุณวางแผนที่จะทำเกมมากขึ้น อ่านทั้งหนังสือ มันเป็นสิ่งที่สวยงาม และอ่านบทความดีกว่าอธิบายจุดของฉันเกี่ยวกับนอน
การแปล กรุณารอสักครู่..
 
ภาษาอื่น ๆ
การสนับสนุนเครื่องมือแปลภาษา: กรีก, กันนาดา, กาลิเชียน, คลิงออน, คอร์สิกา, คาซัค, คาตาลัน, คินยารวันดา, คีร์กิซ, คุชราต, จอร์เจีย, จีน, จีนดั้งเดิม, ชวา, ชิเชวา, ซามัว, ซีบัวโน, ซุนดา, ซูลู, ญี่ปุ่น, ดัตช์, ตรวจหาภาษา, ตุรกี, ทมิฬ, ทาจิก, ทาทาร์, นอร์เวย์, บอสเนีย, บัลแกเรีย, บาสก์, ปัญจาป, ฝรั่งเศส, พาชตู, ฟริเชียน, ฟินแลนด์, ฟิลิปปินส์, ภาษาอินโดนีเซี, มองโกเลีย, มัลทีส, มาซีโดเนีย, มาราฐี, มาลากาซี, มาลายาลัม, มาเลย์, ม้ง, ยิดดิช, ยูเครน, รัสเซีย, ละติน, ลักเซมเบิร์ก, ลัตเวีย, ลาว, ลิทัวเนีย, สวาฮิลี, สวีเดน, สิงหล, สินธี, สเปน, สโลวัก, สโลวีเนีย, อังกฤษ, อัมฮาริก, อาร์เซอร์ไบจัน, อาร์เมเนีย, อาหรับ, อิกโบ, อิตาลี, อุยกูร์, อุสเบกิสถาน, อูรดู, ฮังการี, ฮัวซา, ฮาวาย, ฮินดี, ฮีบรู, เกลิกสกอต, เกาหลี, เขมร, เคิร์ด, เช็ก, เซอร์เบียน, เซโซโท, เดนมาร์ก, เตลูกู, เติร์กเมน, เนปาล, เบงกอล, เบลารุส, เปอร์เซีย, เมารี, เมียนมา (พม่า), เยอรมัน, เวลส์, เวียดนาม, เอสเปอแรนโต, เอสโทเนีย, เฮติครีโอล, แอฟริกา, แอลเบเนีย, โคซา, โครเอเชีย, โชนา, โซมาลี, โปรตุเกส, โปแลนด์, โยรูบา, โรมาเนีย, โอเดีย (โอริยา), ไทย, ไอซ์แลนด์, ไอร์แลนด์, การแปลภาษา.

Copyright ©2025 I Love Translation. All reserved.

E-mail: