2015《Cocos2dx-JS游戏集合》

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::
  51 随笔 :: 4 文章 :: 179 评论 :: 0 引用

    在游戏中游戏人物角色模型的建立是很重要的,人物角色属性包括:角色名,称号,属性【血,攻击,防御】,技能,经验值等,在我们的游戏中,我们还加入了特殊技这样的另类玩法,特殊技其实是一种类型值,玩家可以再战斗中使用特殊技进行战斗的逆转。直接说正题吧,首先分析完之后我们从服务器端的开始,服务器端要有一套标准的人物设置的工具,这样的工具起初建立起来时比较困难,不过后期使用会很多。今天我就将在游戏界面中我们通常看到的类似状态栏一样的工具条做出来,能让玩家直观方便的看到当前自己的状态信息。

   

   服务器端配置工具基本如下图:

   

     其实设置的内容非常多,包括技能,特殊技,道具包,等等一系列关于整个人物属性的操作都需要建立完毕,我这里只截了部分图。让大家了解这个游戏是怎么制作的。首先服务器端配置好之后,客户端就是和服务器端数据请求交互的时候了。

     首先在主界面通常有一查看状态栏的标志:

     

      

     在安卓界面中,UI的设计是多种多样的,这样的界面大家看起来应该不陌生,我们做成了扇形的工具栏,工具栏上面有5个按钮,其中针对每一个按钮设置焦点,距离,及事件!我们在人物的对话框中设置好点击事件,但这是一个交互过程,请求服务器资源后开始进行配置,打开新的窗体展示人物属性。

View Code
//角色信息
findViewById(R.id.btnPlayerInfo).setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {

Indicator.endIndicator();
Indicator.beginIndicator(TApp.getActivity(), "查询中", "正在查询,数据加载中...", R.drawable.icon);

thread_getuserinfo = new Thread(new Runnable() {
@Override
public void run() {
// TODO Auto-generated method stub
pui.setSend_number(usernumber);
pui.Get_GameUserInfos.run();
if (pui.getGetUserInfoList() != null) {
try {
showPlayInfoV();
} catch (Exception e) {
e.printStackTrace();
Indicator.endIndicator();
}
}
}
});
thread_getuserinfo.start();
}


});

    在点击事件中看到有一个请求交互,将玩家的数字账号发送到服务器进行请求后,获取玩家数据。

    之后就是展示:

    

    上图就是玩家角色的基本信息,包括了很多属性·····,但是后来我发现,没有经验值,现在补上,而且显示的布局也不够标准。简单修改一下界面吧,然后加上当前经验值和下一级经验值的参数就OK了,详细写一下代码:

View Code
 <TextView android:id="@+id/tvLevel" android:layout_width="wrap_content" android:layout_height="wrap_content"
android:text="角色等级" />
<TextView android:id="@+id/tvPlayerName" android:layout_width="wrap_content" android:layout_height="wrap_content"
android:text="角色姓名" />
<TextView android:id="@+id/tvPlayerChenHao" android:layout_width="wrap_content" android:layout_height="wrap_content"
android:text="称号" />
<TextView android:id="@+id/tvPlayerJingXue" android:layout_width="wrap_content" android:layout_height="wrap_content"
android:text="精血"

/>
<TextView android:id="@+id/tvExp" android:layout_width="wrap_content" android:layout_height="wrap_content"
android:text="当前经验/生升级经验" />
<TextView android:id="@+id/tvPlayerAttack" android:layout_width="wrap_content" android:layout_height="wrap_content"
android:text="攻击力" />
<TextView android:id="@+id/tvPlayerDefence" android:layout_width="wrap_content" android:layout_height="wrap_content"
android:text="防御力" />
<TextView android:id="@+id/tvPlayerSkill" android:layout_width="wrap_content" android:layout_height="wrap_content"
android:text="特殊技" />

    然后是具体里面代码参数赋值:

View Code
                //人物等级
String playlevel = playerinfo.getUserLevel();
setTextViewText(R.id.tvLevel, "等级:" + playlevel );
//人物经验
String nowexp = playerinfo.getExp();
String nextexp = playerinfo.getNextExp();
setTextViewText(R.id.tvExp, "经验:" + nowexp +"/"+ nextexp);

    修改好,看看效果吧

    

    整体小改之后界面就更加详细明了。上面的装备属性,技能属性都是按钮,手指按下去之后继续弹出物品的属性!

   

    

    好了,人物属性界面介绍完毕,之后一节,我继续开始制作另一种状态栏,是显示经验值进度条和,血条进度条的。

    有喜欢研究网游的研发爱好者可以加我们的群:45578308。希望你能给我们提出宝贵的意见和建议。之后的章节我会详细说到精灵系统,和战斗系统。相互讨论交流。我现在一直纠结于目前我的战斗系统不够流畅···希望有高手和我一起讨论。

posted on 2012-02-26 12:51  入梦凡尘  阅读(...)  评论(...编辑  收藏