全球最大网赌正规平台

服务项目

需求沟通

开发赛马游戏

  随着智能手机的发展,硬件性能不断提高,人们使用手机进行娱乐的需求越来越大,而休闲娱乐的功能则占据更大的比重,赛马游戏是历史最悠久的运动之一。自古至今形式变化甚多,但基本原则都是竞赛速度。

  本游戏基于U3D引擎设计实现的。采用触控屏幕的方式进行游戏,点击开始游戏开始赛马,跳转到竞猜序号界面,选择序号后开始赛马,赛马结束,输出冠军马匹,判断竞猜结果是否正确,连续赛马十次,统计十次的结果,将用户名和赢的次数存入数据库,点击排行榜,可以降序显示出赢的次数的用户名。

  赛马作为受众面较大、趣味性较强的一类,非常适合朋友在聚会的时候玩,可以按每个人所押注赛马的不同名次来决定谁表演节目。具有一定的娱乐价值。

  一、游戏设计及框架

  3D版赛马游戏主要包括分为三大功能模块:系统设置管理模块包括声音设置、震动设置、是否横屏布局管理等 ;游戏控制模块包括选择难度即马匹数量、开始游戏竞猜、排名榜等;系统帮助包括游戏说明及初始系统导航等。该游戏的整个结构如图1所示:

  二、游戏系统架构

  结合U3D的应用的开发特点和三层C/S架构中成熟的架构模式,本游戏系统架构分为五层:数据层、数据访问层、业务对象层、业务逻辑层,UI表示层。

  (一)数据层

  此层用于存储系统所用的各种信息。存储方式分为二种:SQLite3 数据库存储和文件xml的形式进行存储。

  (二)数据访问层

  此层的主要功能是负责数据的访问工作,不仅要实现对SQLite3数据库表的操作,还要实现以文件的I/O操作以及XML文件的读写操作。为此本层主要包括以下三个部分:DBHelper用于SQLite3访问;SharedPreferences用于读写XML文件;JAVA IO文件操作相关类。

  (三)业务对象层

  此层对真实世界中某些物体在软件开发中的一种简单抽象。例如 :本游戏最为主要是马匹对象等。这一层的主要工作是实现对象关系映射(Object/Relation Mapping,ORM),即将数据访问层获取的数据集信息映射到与游戏关系的某些业务对象中。

  (四)业务逻辑层

  此层是对业务对象层为基础,结果不同的业务需求,针对相应的业务对象,制定业务规则、业务流程,业务逻辑层在体系架构中的位置十分关键,起到承上启下的作用。

  (五)UI表示层

  此层是与用户直接交互部分。为达到方便用户的使用,操作简洁的目的,本系统以一些Android,ios提供的控件为基类,进行了扩展。例如:MySurfaceView控件是继承自Android的SurfaceView控件,DrawThread控件继承于Thread,并自定义布局中设置登录、竞猜、排名榜等布局。

  三、游戏实现

  本游戏设计有5个主界面,分别是登录、系统设置、竞猜、赛马、排行榜显示。

  最关键的赛马的界面设置,本游戏创建了MySurfaceView类来完成赛马背景和马匹动态的绘制。

  游戏为支持多种尺寸的屏幕,本游戏中所用的图片(马匹跑道图片、马匹图片)都兼容不同尺寸的屏幕,根据比例将图片进行等比缩放。

  竞猜界面:用户登陆后,每位用户有10次竞猜机会,初次登陆显示有10次机会并直接在editText中输入马匹编号开始竞猜,进入到赛马界面,如图2。

  最主要的赛马界面:本游戏界面根据系统设置难度设置不同马匹数量进行比赛,每匹马采用两帧交替显示,背景采用绿色草坪图案,每匹马的速度每一秒都采用随机数获得,如图3,某一匹马到达终点后整个赛马界面退出,回到竞猜界面同时会显示哪匹马最先到达终点。到达的马匹编号和用户竞猜的马匹编号比对,如果猜对就将count++,之后再次输入马匹编号进行下一轮竞猜,10次之后累计猜对结果并保存在数据库中。

  db.execSQL("create table user(Sno Integer ,name String,winCountint)");//建表

  ContentValues values = newContentValues();

  values.put("name",Login_Activity.useName);//添加键值对

  values.put("winCount",Guess_Activity.winCount);

  db.insert("user", null, values);//插入数据到user表中

  背景音乐设置:通过用户输入马匹获得编号,设置多种背景音乐,根据所得马匹编号选择播放哪种音乐,增加赛马乐趣。

  排名榜界面:通过listview控件完成排名榜设置,使用SimpleAdapter类完成排名榜布局,并降序排列。

  DatabaseHelperdbHelper = newDatabaseHelper(ScoreList.this,"Horse_db");

  SQLiteDatabasedb = dbHelper.getReadableDatabase();

  Cursor cursor = db.query("user", new String[]{"winCount","name"}, null,null,null, null, "winCount desc","10");

  while(cursor.moveToNext())

  {

  String name = cursor.getString(cursor.getColumnIndex("name"));

  intwinCounts = cursor.getInt(cursor.getColumnIndex("winCount"));

  }

  四、结论

  基于Android,ios系统平台的赛马游戏通过对UI及数据库等多方面的设置,完成了手机终端游戏的设计与开发,该游戏简单易学,运行稳定,节省资源,便于单人或多人娱乐,有一定的娱乐价值。

选择一家app定制的软件开发公司,最重要的是程序员的素质和综合能力,仟源科技专业从事软件开发,服务行业范围非常之广,汇聚了JAVA,NET,前端,APP应用,PHP,软件测试等多方面的开发工程师,也有平面设计,产品设计与运营,网络建设与运维等方面的专业人才,有多年的企业级软件开发的经验。

  仟源科技有限公司始终坚持以创业服务创业,以创新服务创新”的宗旨,做软件开发,全球最大网赌正规平台和系统开发核心业务,实现前瞻性投资,为优秀创业者做一站式扶持,并建立“大服务、大扶持、大未来”的目标。仟源科技坚持以客户需求为中心,打造企业品牌助力企业成长!那么最后说一句,如果您有软件开发的需求,请马上关注联系我们吧。

文章标签:
文章评论:

专业的全球最大网赌正规平台/系统开发、品牌设计/网站建设,选仟源!

选择专业的企业服务公司,服务更靠谱!

立即点击咨询>
客服图标
客服图标