游戏开发论坛

 找回密码
 立即注册
搜索
查看: 4315|回复: 16

帮忙写个代码

[复制链接]

16

主题

66

帖子

66

积分

注册会员

Rank: 2

积分
66
发表于 2005-11-20 09:44:00 | 显示全部楼层 |阅读模式
我这里有个压缩包,里面两个图片素材,一个是角色的,一个是地图,请帮忙用VB6.0+DirectX7把以下功能写出:
角色图片中只有三个行走动作,程序一加载就能看见角色在地图中心循环这三个动作(注意:角色不能响应键盘动作而移动,只在那里循环地做着这三个动作).先多谢了. [em5]

sf_200511209446.rar

47.75 KB, 下载次数:

20

主题

451

帖子

470

积分

中级会员

Rank: 3Rank: 3

积分
470
发表于 2005-11-21 04:15:00 | 显示全部楼层

Re:帮忙写个代码

我现在写出我怎么结合我自己写的2d引擎实现的,是vb.net代码(我的引擎在我发的帖子里面可以下载到,是DX9的,带原码)
Structure AnimationS
        Dim Index As Int16
        Dim TotalFrame As Int16
        Dim CurrentFrame As Int16
        Dim Gueltig As Boolean
        Dim X As Int16
        Dim Y As Int16
        Dim Weith As Int16
        Dim Heith As Int16
    End Structure
Private Animation(0) As AnimationS,GEngine As GEngine.GEngine'GEngine就是我的引擎
Private GamePath As String = System.IO.Path.GetDirectoryName(Application.ExecutablePath) & "\"
Private TextP(0) As GEngine.GEngine.StrC
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
    GEngine = New GEngine.GEngine(me, GamePath)
    GEngine.CreateNewBuffer("c:\ditu.bmp", 800, 600, 0, 0, True, True)'地图
    Animation(0).Index =GEngine.CreateNewBuffer("c:\renwu.bmp", 60, 40, 400, 300, False, True)'人物
        Animation(0).CurrentFrame = 1
        Animation(0).X = 400
        Animation(0).Y = 300
        Animation(0).Weith = 20'单桢的宽度
        Animation(0).Heith = 40
        Animation(0).Gueltig = True
        Animation(0).TotalFrame = 3
        GEngine.PrintStr(TextP)
        Me.Show()
        Timer1.Enable=True'用来控制动画的Timer
        Do '主循环
            GEngine.Render()
            Application.DoEvents()
        Loop
End Sub
创建一个Timer,间隔设置成动画刷新率
Private Sub Timer1_Elapsed(ByVal sender As System.Object, ByVal e As System.Timers.ElapsedEventArgs) Handles Timer1.Elapsed
        Dim Count As Int16 = Animation.GetLength(0), I As Int16, Weith As Int16, Heith As Int16, Left As Int16
        For I = 1 To Count
            If Animation(I - 1).Gueltig = True Then
                Weith = Animation(I - 1).Weith
                Heith = Animation(I - 1).Heith
                Left = (Animation(I - 1).CurrentFrame - 1) * Weith
                GEngine.ChangeBltRect(Animation(I - 1).Index, Left, 0, Left + Weith, Heith)

                GEngine.DisableBuffer(Animation(I - 1).Index, True)
                Animation(I - 1).CurrentFrame = Animation(I - 1).CurrentFrame + 1
                If Animation(I - 1).CurrentFrame > Animation(I - 1).TotalFrame Then Animation(I - 1).CurrentFrame = 1
            Else
                If I <> 1 Then
                    GEngine.DisableBuffer(Animation(I - 1).Index, False)
                End If
            End If
        Next
    End Sub

     
   

10

主题

42

帖子

42

积分

注册会员

Rank: 2

积分
42
发表于 2005-11-21 11:24:00 | 显示全部楼层

Re:帮忙写个代码

这个游戏有权不源代码
http://zh1110.nease.net/code.htm

10

主题

42

帖子

42

积分

注册会员

Rank: 2

积分
42
发表于 2005-11-21 11:27:00 | 显示全部楼层

Re:帮忙写个代码

dx7 sdk ddraw 离子 1234

130

主题

2714

帖子

2714

积分

金牌会员

Rank: 6Rank: 6

积分
2714
发表于 2005-11-21 11:46:00 | 显示全部楼层

Re: Re:帮忙写个代码

vb之神: Re:帮忙写个代码

这个游戏有权不源代码
http://zh1110.nease.net/code.htm



我拜托你不要捣乱好不好? 你贴这个网站是老老资料......
vb之神为什么不自己写一个例子?


还有各位看看清楚题目,VB6+DX7,如果不是的都不要发上来,
一个例子,几十行程序就解决,我用BITBLT画,也不发了,除非
楼主要求,15分钟就可以写好。

16

主题

66

帖子

66

积分

注册会员

Rank: 2

积分
66
 楼主| 发表于 2005-11-21 12:02:00 | 显示全部楼层

Re: 帮忙写个代码

我真的不想在GDI下作图(作游戏),虽然大家都很热心,但我还是找不到自己真正想要的..... [em8]

130

主题

2714

帖子

2714

积分

金牌会员

Rank: 6Rank: 6

积分
2714
发表于 2005-11-21 13:04:00 | 显示全部楼层

Re:帮忙写个代码

晚上有时间我帮你写例子吧!
现在很忙.

16

主题

66

帖子

66

积分

注册会员

Rank: 2

积分
66
 楼主| 发表于 2005-11-21 17:40:00 | 显示全部楼层

Re: 帮忙写个代码

呜呜呜~~~今时今日还能找到像你这种这么热心帮助菜鸟的人真难得啊.小弟感激不尽,有了你这个例子,我的游戏就会一打打的涌出来的了... [em13]

20

主题

451

帖子

470

积分

中级会员

Rank: 3Rank: 3

积分
470
发表于 2005-11-21 18:15:00 | 显示全部楼层

Re:帮忙写个代码

呵呵,我的引擎也有dx7版的,要不要拿去参考一下?

16

主题

66

帖子

66

积分

注册会员

Rank: 2

积分
66
 楼主| 发表于 2005-11-22 11:57:00 | 显示全部楼层

Re:帮忙写个代码

当然好哦...谢谢
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

作品发布|文章投稿|广告合作|关于本站|游戏开发论坛 ( 闽ICP备17032699号-3 )

GMT+8, 2026-1-22 18:15

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表