亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        游戲程序加工在教學(xué)中的實(shí)現(xiàn)

        2009-04-21 06:44:52李慎東
        關(guān)鍵詞:左移程序代碼子彈

        李慎東

        游戲程序加工,對學(xué)生來說是一個(gè)非常新鮮、感興趣的課題。它不僅可以鍛煉學(xué)生的邏輯思維能力,還能充分發(fā)揮學(xué)生的創(chuàng)造力。設(shè)計(jì)“游戲程序加工”教學(xué)內(nèi)容,主要是為了開啟游戲程序設(shè)計(jì)之門,使每個(gè)學(xué)生都能領(lǐng)會信息的編程加工的原理和方法。因此我基于VB程序設(shè)計(jì)平臺以“雷電”程序的加工為例,對教學(xué)進(jìn)行了精心的設(shè)計(jì)與程序?qū)崿F(xiàn)的策劃,通過學(xué)生體驗(yàn)游戲程序的加工以充分達(dá)到教學(xué)目標(biāo)。

        根據(jù)教材(《信息技術(shù)基礎(chǔ)》,上海教育科學(xué)出版社出版)課標(biāo)要求,這節(jié)內(nèi)容主要講述在VB編程環(huán)境下讓學(xué)生體驗(yàn)信息的編程加工的過程。因此在本課中我借助Moodle教學(xué)平臺,以“游戲程序的簡單加工”為主線,從學(xué)生通過VB源程序體驗(yàn)游戲并發(fā)現(xiàn)游戲存在的問題著手,引導(dǎo)學(xué)生學(xué)會查看對象、修改對象屬性和變量值,以小組合作形式讓學(xué)生嘗試解決游戲存在的問題,試圖閱讀程序代碼和代碼添加,使學(xué)生明白通過編寫程序代碼就可以完善程序的功能。在教學(xué)過程中通過學(xué)生體驗(yàn)游戲程序加工過程再到知識歸納,充分體現(xiàn)隱性知識到顯性知識的轉(zhuǎn)化。下面我就結(jié)合教學(xué)實(shí)際,談一談“雷電”游戲程序加工在教學(xué)中的實(shí)現(xiàn)過程。

        一、“雷電”游戲的設(shè)計(jì)思想

        完成此游戲程序設(shè)計(jì)涉及以下幾個(gè)方面的內(nèi)容:①敵方飛機(jī):移動(為簡化程序,將敵機(jī)置為不動)、生命值(當(dāng)被我方子彈擊中后,生命值就減1,生命值為0時(shí)則我方贏,游戲結(jié)束)、子彈數(shù)(永遠(yuǎn)夠用)、子彈射擊的路徑(設(shè)置為無規(guī)則的曲線路徑射擊)。②我方飛機(jī):移動(按“a、d、s、w”鍵時(shí)飛機(jī)“左、右、上、下”移動,飛機(jī)移動時(shí),子彈跟著飛機(jī)一起移動)、子彈射擊(點(diǎn)擊鼠標(biāo)左鍵或按“,”鍵時(shí)發(fā)射子彈,每按一次子彈數(shù)減1,子彈數(shù)為0時(shí)則我方輸了,游戲結(jié)束)、子彈射擊路徑(垂直發(fā)射)、生命值(被敵方擊中1次則生命值減1,生命值為0時(shí)則我方輸,游戲結(jié)束)。③控制鍵的檢測:通過文本框的SetFocus功能獲取光標(biāo)焦點(diǎn),檢測按鍵執(zhí)行相應(yīng)功能。④敵方與我方子彈射擊速度各由一個(gè)計(jì)時(shí)器控制。

        二、簡單的對象屬性、變量值的修改

        課程中設(shè)計(jì)從學(xué)生體驗(yàn)并發(fā)現(xiàn)“雷電游戲”存在的問題切入,學(xué)生在體驗(yàn)中發(fā)現(xiàn)我方飛機(jī)只能左移且移動速度慢、控制鼠標(biāo)左鍵發(fā)射子彈、子彈數(shù)太少、生命值不夠、敵方飛機(jī)不能動、敵機(jī)子彈無規(guī)則地曲線發(fā)射。

        針對學(xué)生發(fā)現(xiàn)的問題,經(jīng)過反復(fù)的思考與設(shè)計(jì),我巧妙地將問題串起來,同時(shí)也呈現(xiàn)了程序設(shè)計(jì)的基本過程。通過講解先讓學(xué)生了解程序的編寫環(huán)境、界面的對象及基本屬性、查看與理解基本程序代碼,以便各組學(xué)生能順利地完成如下列表中的任務(wù)。

        各組任務(wù)及指引表

        各組任務(wù)既有梯度又有相似性,梯度表現(xiàn)在:從程序界面對象屬性的修改到變量值、代碼參數(shù)的修改,遵循了程序設(shè)計(jì)的思想;相似性表現(xiàn)在各組修改的都是數(shù)值,簡單易懂。

        三、如何實(shí)現(xiàn)多功能的代碼添加

        教師提供給學(xué)生的雷電源程序,功能少漏洞多,希望同學(xué)們通過加工雷電程序,能夠使得程序功能更加完善。上述活動是教學(xué)目標(biāo)達(dá)成的一個(gè)重要過程,要圓滿完成本節(jié)教學(xué)任務(wù),需要更深層次地拓展教學(xué)內(nèi)容。由于學(xué)生對程序代碼的陌生,教學(xué)設(shè)計(jì)中只能采取以誘善引的策略,逐步使學(xué)生了解程序代碼的編寫過程,使學(xué)生既不產(chǎn)生對程序代碼的恐懼感,又能成功地添加代碼完善游戲功能,成就感會使學(xué)生保持良好的學(xué)習(xí)興趣。所以在源程序中只編寫了簡化后飛機(jī)左移的代碼。學(xué)生主動查找飛機(jī)左移的代碼在哪里,并試圖理解飛機(jī)左移代碼:

        If KeyAscii = Asc("a") Then '如果按的是a鍵,就執(zhí)行下面語句

        myplayer.Left = myplayer.Left – 30'我方飛機(jī)向左移動30個(gè)緹(單位)

        End If'結(jié)束判斷

        在教師的提示下學(xué)生很快便能掌握“if”和“end if”是成對出現(xiàn)的條件語句,可以用來判斷按鍵情況,以執(zhí)行相應(yīng)語句。(語句中的KeyAscii和Asc(“a”)不再過多解釋,學(xué)生可課后查閱相關(guān)知識。)接下來學(xué)生便可參照飛機(jī)“左移代碼”,兩個(gè)學(xué)生為一組探討添加“右移代碼”就簡單多了。大部分學(xué)生通過復(fù)制“左移代碼”到“右移代碼”提示處,再將“a”改成“d”。把“myplayer.left”改成“myplayer.right”,按照正常理解思路是對的,可是我們回過頭來查看一下“myplayer”的對象屬性,在位置屬性里只有“l(fā)eft”和“top”,沒有“right”的屬性,因此需要理解的是“改變(減少或增加)對象與窗體左邊之間的距離就能實(shí)現(xiàn)飛機(jī)的左右移動”,即執(zhí)行右移的語句為:

        myplayer.Left = myplayer.Left + 100

        游戲程序加工,除了要求每個(gè)學(xué)生都能完成上述基本的活動任務(wù)外,更要強(qiáng)調(diào)學(xué)生創(chuàng)造力的發(fā)揮,要求學(xué)生課后有選擇地、有創(chuàng)造性地去修改游戲程序,比一比誰加工的游戲程序功能更多、更合理,并要求學(xué)生一周后提交作品,教師對學(xué)生的優(yōu)秀作品進(jìn)行點(diǎn)評。

        四、程序代碼(僅提供關(guān)鍵部分程序代碼)

        Dim enemylife As Integer'敵方生命值

        Dim mylife As Integer'你的生命值

        Dim fs As Boolean'判斷子彈發(fā)射

        Dim bullet As Integer'子彈數(shù)目

        Private Sub Form_Load() '程序開始運(yùn)行時(shí)初始化數(shù)據(jù)

        enemylife = 10

        fs = True

        bullet = 10

        La1.Caption = enemylife

        mylife = 3

        Label3.Caption = mylife

        Label5.Caption = bullet

        End Sub

        Private Sub Form_Click()'點(diǎn)擊鼠標(biāo)時(shí)子彈發(fā)射

        If bullet <> 0 And enemylife <> 0 And mylife <> 0

        Then

        mybullet.Visible = True: Timer1.Enabled = True

        bullet = bullet - 1 '子彈數(shù)減1

        Label5.Caption = bullet

        End If

        End Sub

        Private Sub Text1_KeyPress(KeyAscii As Integer)

        Text1.Text = ""

        Text1.SetFocus

        If fs = True Then

        mybullet.Left = myplayer.Left + myplayer.Width / 2

        '子彈未發(fā)射,我方飛機(jī)左移時(shí),子彈跟著左移.

        End If

        If KeyAscii = Asc("a") Then

        myplayer.Left = myplayer.Left - 30

        End If

        '此處可添加按鍵控制的代碼,如右移等

        End Sub

        '計(jì)時(shí)器1控制我方子彈移動速度程序段

        '計(jì)時(shí)器2控制敵方子彈移動速度程序段

        '游戲結(jié)束程序段

        '游戲開始程序段

        (作者單位:廣東廣州市第五中學(xué))

        猜你喜歡
        左移程序代碼子彈
        華容道玩法大解密
        三顆子彈
        子彈VS防彈
        Karma:讓子彈飛一會兒
        汽車觀察(2019年2期)2019-03-15 06:00:20
        子彈
        計(jì)算機(jī)網(wǎng)絡(luò)信息安全未來發(fā)展趨勢
        基于圖元裝接模式由程序流程圖自動生成源代碼
        軟件工程(2016年11期)2017-01-17 16:56:57
        C語言位運(yùn)算中鮮為人知的事
        軟件工程(2014年5期)2014-09-24 11:53:38
        嵌入式系統(tǒng)中程序的優(yōu)化策略
        新媒體研究(2009年4期)2009-03-14 06:59:48
        VBA在課件交互設(shè)計(jì)中的應(yīng)用
        欧美日韩精品久久久免费观看| 魔鬼身材极品女神在线| 97成人精品在线视频| 亚洲精品久久激情国产片| 中文字幕日韩精品无码内射| 久久九九青青国产精品| 在线观看免费视频发布白白色| 99re6在线视频精品免费下载| 无码人妻久久一区二区三区不卡| 亚洲AV永久青草无码性色av| 熟女人妻一区二区中文字幕| 国产av在线观看久久| 国产熟人av一二三区| 无码一区东京热| 亚洲av资源网站手机在线| 国产精品无码素人福利不卡| 开心婷婷五月激情综合社区 | JIZZJIZZ国产| 亚洲福利一区二区不卡| 无码毛片内射白浆视频| 性动态图av无码专区| 国产高清在线91福利| 亚洲国产日韩一区二区三区四区 | 后入内射欧美99二区视频| 亚洲AV手机专区久久精品| 亚洲女厕偷拍一区二区| 中文 在线 日韩 亚洲 欧美| 国产爽爽视频在线| 日韩中文字幕一区二十| 高清午夜福利电影在线| 久久久久国产精品免费免费搜索 | 欧美精品一区二区蜜臀亚洲| 国产最新一区二区三区天堂| 亚洲一二三四五中文字幕| 日韩精品专区av无码| 欧美末成年videos在线观看 | 国产91会所女技师在线观看| 亚洲国产av玩弄放荡人妇| 日中文字幕在线| 亚洲激情视频在线观看a五月| 无码爆乳护士让我爽|