当前位置:首页 > Windows程序 > 正文

当然游戏一开始不会立刻就出现高级的人来买比较大的东西

2024-03-31 Windows程序

游戏的开始,需要添加框架库,于是引用我本身写的库。

首先是创建一个启动页面,这个页面是显示启动的。

在显示启动的时候,是需要加载游戏需要使用的资源,如果感受这时需要控制进度条,就需要使用注入的要领,给他知道此刻的进度,不过我此刻不去做这里,于是就很简单的代码做出来启动页面。

此刻的启动页还是空的,但是先不管他。

然后开始写一个欢迎页面,也就是开始游戏、继续、辅佐等的页面,暂时先不做。

但是写了这么多,都不需要在 MainPage 写一个代码,此刻就到了在 MainPage
开始写代码,这时的代码就是添加一个 Frame 作为跳转,和一个菜单。固然菜单此刻还没对象,只是需要添加到这里。

看下,此刻已经创建了两个页面。一个是启动页,一个是欢迎页。

接着开始做游戏的主页面,请注意,在写的时候,一个页面都是对应一个视图。可以看到在写的时候,不需要去管两个页面之间的逻辑。固然此刻也无法管。

可以知道游戏的主页面需要有货仓、买对象的店铺、买对象的处所和工厂。

那么需要想游戏是如何玩的。

因为这个游戏是我昨天看到买菜的人说的,我就想去做一个。

首先物品有很多,而且可以通过工厂把初级的物品转为高级的物品。

物品包孕

种子 小米 麦 面 面包 番薯 矿石 铁 铜 木头 石 矿 碳 煤 锄头 椅子 桌子 镌刻刀 大刀 弓箭

如果还有想到其他的物品,欢迎报告我。不过在看完之前,请不要很快的报告我,你但愿添加那些物品,请在知道游戏如何玩之后在报告我,你喜欢的物品。

物品是包孕当前价格和市场价格,此中当前价格是不乱的,而市场价格是会在 80%-120% 之间颠簸。

开始说游戏的商店是如何卖对象的,游戏使用的商店是可以通过市场买对象,然后把对象买个买对象的人。商店可以有很多个,固然,此刻做的只有一个。商店存在信誉,商店来的客人数是不固定,和商店地址处所和商店信誉有关。如果一个处所人很多那么来商店的人会很多。如果商店信誉很好,来商店的人很多。

一个买对象的人,会报告商店他买的是有哪些,数量,但愿买的价格。买的价格就是市场价格,市场价格总是变革,需要在每个时间决定是否买入。

所以商店的输入按钮此刻就有了一个,下一时间,也就是在这个时间是否有买对象的人过来,是反对定要从市场买对象。

所以点击一下按钮,就可以获恰当前有几多个买对象的过来,,措置惩罚惩罚完之后在去市场买对象。

买对象的人过来,就会说他此刻需要买什么,固然游戏一开始不会立刻就呈现高级的人来买对照大的对象。来买对象的人是有分品级的,也就是他有几多钱,于是凭据钱判断他此刻可以买几多对象。

如果商店存在他可以买的对象,如商店此刻有对象

种子 2 小米 10 麦 10 面 2

他想买对象是

种子 1 小米 2 麦 3

于是恰好都可以买入,于是顾客就会给满分,因为他想要的商店可以买到所有他想要的对象。于是商店加信誉1。

一小我私家总的带来信誉 是这样计算,他想要的商品价格可以获得数

var s = 买对象人买对象加起来的所有价值 var a = 商店供给商品总价格 带来信誉 = 2 * a / s - 1

如果只能满足买对象人一半的需要,那么不会带来任何的信誉提升。

于是在点击下一时间,就开始计算有几多买对象的人,他们有几多钱,所以需要物品这个类给出他可以被转变的概率,通过他的钱就可以算出。于是物品需要的属性就可以得到,物品名、物品需要几多钱,物品总量。此刻物品的总量可以不计算。

来买对象的人有这些属性,所有的钱,级别。买的对象。级别就是商店有几多信誉在可以吸引这个买对象的人,这里写为一个列表

但是开始先做一个简单的措施,之后在添加对照多成果。

界面

游戏的界面很重要,但是我就写一个简单的界面。我先给界面的截图,可以看到这个界面很简单,就是一个列表和一些按钮

列表有个问题,如何做表头,实际我也没步伐,于是用了下面的代码

<ListView Grid.Row="1" ItemsSource="{x:Bind View.PropertyStorage}" SelectedItem="{Binding CarloPiperIsaacProperty,Mode=TwoWay}"> <FrameworkElement.Resources> <Style TargetType="TextBlock"> <Setter Property="HorizontalAlignment" Value="Center"></Setter> </Style> </FrameworkElement.Resources> <ListView.ItemContainerStyle> <Style TargetType="ListViewItem"> <Setter Property="HorizontalContentAlignment" Value="Stretch"></Setter> </Style> </ListView.ItemContainerStyle> <ListView.Header> <Grid> <Grid.ColumnDefinitions> <ColumnDefinition></ColumnDefinition> <ColumnDefinition></ColumnDefinition> <ColumnDefinition></ColumnDefinition> <ColumnDefinition></ColumnDefinition> </Grid.ColumnDefinitions> <TextBlock Text="名称"></TextBlock> <TextBlock Grid.Column="1" Text="价格"></TextBlock> <TextBlock Grid.Column="2" Text="货仓拥有"></TextBlock> <TextBlock Grid.Column="3" Text="买入代价"></TextBlock> </Grid> </ListView.Header> <ListView.ItemTemplate> <DataTemplate x:DataType="view:Property"> <Grid> <Grid.ColumnDefinitions> <ColumnDefinition></ColumnDefinition> <ColumnDefinition></ColumnDefinition> <ColumnDefinition></ColumnDefinition> <ColumnDefinition></ColumnDefinition> </Grid.ColumnDefinitions> <FrameworkElement.Resources> <Style TargetType="TextBlock"> <Setter Property="HorizontalAlignment" Value="Center"></Setter> </Style> </FrameworkElement.Resources> <TextBlock Text="{x:Bind Name}"></TextBlock> <TextBlock Grid.Column="1" Text="{x:Bind Price,Mode=OneWay}"></TextBlock> <TextBlock Grid.Column="2" Text="{x:Bind Num,Mode=OneWay}"></TextBlock> <TextBlock Grid.Column="3" Text="{x:Bind AshliLyverGeraldo,Mode=OneWay}"></TextBlock> </Grid> </DataTemplate> </ListView.ItemTemplate> </ListView>

温馨提示: 本文由Jm博客推荐,转载请保留链接: https://www.jmwww.net/file/34988.html

Jm-杰米博客Jamie
草根站长的技术交流乐园!IT不会不要紧快来好好学习吧!
  • 20786文章总数
  • 7494590访问次数
  • 建站天数
  • 友情链接