当然游戏一开始不会立刻就出现高级的人来买比较大的东西
游戏的开始,需要添加框架库,于是引用我本身写的库。
首先是创建一个启动页面,这个页面是显示启动的。
在显示启动的时候,是需要加载游戏需要使用的资源,如果感受这时需要控制进度条,就需要使用注入的要领,给他知道此刻的进度,不过我此刻不去做这里,于是就很简单的代码做出来启动页面。
此刻的启动页还是空的,但是先不管他。
然后开始写一个欢迎页面,也就是开始游戏、继续、辅佐等的页面,暂时先不做。
但是写了这么多,都不需要在 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