6

我和我的朋友们正在开始一个像 Pokemon 这样的游戏,我们想知道我们将如何在游戏中添加怪物?我们使用 VisualBasic 是因为我朋友的兄弟说这样会更容易。

到目前为止,我们可以将怪物的图片放在屏幕上,你可以点击攻击和东西。

现在,当我们想要添加怪物时,我们必须创建一个新窗口。这将花费我们很长时间来为每种类型的怪物制作所有的窗口。是否有工具或其他东西可以使这更快?游戏公司如何做到这一点?

4

8 回答 8

2

我认为最好的解决方案是制作一个通用窗口,它可以采用一些描述怪物的参数。

我不完全是最新的 VB,但在 OO 语言中,我们将有一个 Monster 基类,并继承来创建一个皮卡丘。基类将定义怪物拥有的基本事物(如图片、名称和类型)以及怪物可以做的事情(如攻击、逃跑等)。您甚至可以使用第二个级别,并为每种类型设置基类(例如 ElectricMonster 继承自 Monster,而 Pikachu 继承自 ElectricMonster)。

然后将 Monster 对象传递给窗口变得非常容易,并让窗口知道如何提取所有相关信息。

于 2008-09-17T04:50:48.223 回答
1

我建议列出每个怪物所需的所有属性,并将所有这些属性存储在MySQL之类的数据库中。这样您就不需要为每个怪物制作窗口,只需每次出现怪物时(在这种情况下,您只需从数据库中获取必要的信息)。

如果您不熟悉任何数据库,请查看MySQL 教程以开始学习。

于 2008-09-17T04:49:01.503 回答
1

我认为最大的问题将是创建所有不同的角度(当角色转动时等)。您可以根据电视节目/纸牌游戏的不同帧开发角色的 3d 模型吗?

于 2008-09-21T19:47:00.803 回答
1

我建议你应该尝试提取怪物可能拥有的各种属性。想想顶级王牌...

然后,您可以创建一个 Monster 类,其中每个属性由一个 Property/Field 表示。

就像是

Class Monster
    Public Name as String 
    Public Filename as String ' Location of graphics file on disk
    Public Strength as Integer 
    Public Speed as Integer 
    Public Sub New(Name as String, Filename as String, Strength as Integer, Speed as Integer)
        Me.Name = Name
        Me.Filename = Filename
        Me.Strength = Strength
        Me.Speed = Speed
    End Sub 
End Class

然后你就可以创造出这样的怪物了。

Dim Monster1 as New Monster("monster1", "C:\Graphic1.jpg", 50, 10)  
Dim Monster2 as New Monster("monster2", "C:\Graphic2.jpg", 1, 100)  
Dim Monster3 as New Monster("monster3", "C:\Graphic3.jpg", 60, 17)  

但是您不需要每次都创建一个新的“窗口”。

同样,您将能够从其他地方获取“怪物”数据……例如数据库。

于 2008-09-29T21:29:54.987 回答
0

一旦你创建了你的作品,我会从硬盘动态加载它,而不是将它编译成一个大的 EXE。您可以使用 PictureBox 控件的 LoadPicture 方法。

于 2008-09-17T04:49:20.783 回答
0

你需要了解数据、数据结构和循环。你的怪物应该由数据组成,也许还有一些代码,然后你的怪物显示屏将根据这些数据和代码显示和操作一个怪物。

复制和粘贴小部件不适合您。学习从小部件中抽象数据和逻辑。

现在停止使用 VB 并去玩http://scratch.mit.edu它更合适。

于 2008-09-17T04:50:17.570 回答
0

“当我们想要添加怪物时”是什么意思?你的意思是每个怪物都有一个单独的窗口,当那个怪物出现时会显示?建立在坐说的基础上;设计,设计,设计。Ad Hoc 设计方法不能扩展到最小的程序之外。

于 2008-09-17T04:50:35.430 回答
0

您必须将怪物数据存储在文件或数据库中,然后从通用窗口加载它们。例如,您的硬盘中有一张皮卡丘的照片和一张球茎龙的照片。然后你用空白图片制作一个窗口,当你显示窗口时你告诉图片对象加载你需要的图片。

于 2008-09-17T05:21:22.813 回答