Go C 一款簡單的貪吃蛇

2021-09-26 21:02:29 字數 2500 閱讀 7242

前言

這是一款執行在window上簡單貪吃蛇,需要電腦上gcc編譯c語言**,可以參考win10下安裝gcc/g++

package main

import (

"fmt"

"math/rand"

"os"

"snake/clib"

"strconv"

"time"

)// 全域性常量

const (

width = 40 // 地圖寬度

height = 20 // 地圖高度

length = 2 // 蛇長度

direction = 'r' // 方向

)// 全域性變數

var (

food food // 食物

delay time.duration = time.second / 2 // 速度

score int = 0 // 分數

)// 初始化父類座標

type position struct

// 初始化蛇子類

type snake struct

// 初始化食物子類

type food struct

// 初始化遊戲地圖

func mapinit()

// 初始化蛇資訊

func (s *snake) snakeinit()

// 繪製蛇

func (s *snake) snake() else

show(s.pos[i].x, s.pos[i].y, ch) }}

// 接受指定鍵盤按鍵輸入

func (s *snake) getinput()

case 72, 85, 117:

if s.dir != 'd'

case 77, 82, 114:

if s.dir != 'l'

case 75, 76, 108:

if s.dir != 'r'

case 32:

s.dir = 'p'

}} }()

}// 蛇運動

func (s *snake) play()

if s.check() == false

s.eating() // 享受美食

s.changespeed() // 改變速度

s.updatepos() // 更新蛇位置

s.snake() // 繪製蛇的ui }}

// 生命檢測

func (s *snake) check() bool

// 蛇頭和身體碰撞

for i := 1; i < s.len; i++

} return true

}// 更新位置

func (s *snake) updatepos()

// 根據方向改變蛇頭位置

switch s.dir

show(s.pos[0].x, s.pos[0].y, '@') // 繪製蛇頭

}// 享受美食

func (s *snake) eating()

}// 根據得分改變速度

func (s *snake) changespeed()

// 隨機食物

func (s *snake) randomfood()

} show(food.x, food.y, '$') // 顯示食物

}// 顯示資訊

func show(x int, y int, ch byte)

// 兩者之間隨機數 左閉右開

func randint(min, max int) int

return rand.intn(max-min) + min

}// 顯示等分

func (s *snake) showscore()

// 遊戲結束

func (s *snake) gameover()

func main()

package clib

/*#include#include//使用winapi來移動控制台游標

void gotoxy(int x,int y)

//從鍵盤獲取一次按鍵但不顯示在控制台

int direct()

//去控制台游標

void hidecursor()

*/import "c" // go可以嵌入c語言的函式

// 設定控制台游標位置

func gotoposition(x int, y int)

// 無顯示鍵盤輸入字元

func direction() (key int)

// 隱藏滑鼠

func hidecursor()

關於一款c 貪吃蛇小遊戲

好久不資瓷了。首先宣告,這個東西為 窩不會寫這個。如下 include include include include using namespace std char ch w o int i 10,j 10,a 100 100 b 100000 c 100000 u 0,gh 0,i1 0,j1...

簡單的「貪吃蛇」

近日無事,看見很多地方有人在詢問貪吃蛇程式的做法,剛好我前段時間在公司做手持終端應用開發時,利用乙個午休時間自己也寫了個貪吃蛇程式玩玩,效果和手機 遊戲機上一樣,但是程式是在公司電腦上,由於資訊保安,是拷不出來的,這裡就給大家講講如何寫貪吃蛇程式吧。其實貪吃蛇遊戲程式是很簡單的,只要大家坐下來細心地...

C 簡單貪吃蛇

一定要自己定義set level view score 等函式,main 函式中主要運用了函式指標來縮短 其中忽略了必要的 include標頭檔案和using指示 如 using namespace std 請自行補充。我的想法是有 兩個線性表 和乙個字串 一 定義第乙個線性表的 片段如下 int ...