ttp://www.xwwzsj.com/weixin#item4">小程序开发
  • 案例展示
  • 新闻资讯
  • 解决方案
  • 瑞达杰昌建站
  • 联系我们
  • 客户专线:135-1821-9792

    服务热线:028-86922220

    我们专注于高端品牌网站创意设计与开发

  • AIRAndroid:创建棋子类Grid

    像往常一样编写ActionScript代码

    让客户满意是我们工作的目标,不断超越客户的期望值来自于我们对这个行业的热爱。我们立志把好的技术通过有效、简单的方式提供给客户,将通过不懈努力成为客户在信息化领域值得信任、有价值的长期合作伙伴,公司提供的服务项目有:申请域名、雅安服务器托管、营销软件、网站建设、呼中网站维护、网站推广。

    打开FlashDevelop(FD),创建项目FlipIt,FD会自动创建主程序Main类。不要急于编写主程序,为了让程序的结构更合理,可以先将其中某些功能分离出来,增强代码的灵活性。在这个游戏中,可以独立出来的一个对象就是棋子。

    创建棋子类Grid

    棋子是构成棋盘的基础。从面向对象编程的角度分析,每个棋子的使用方法完全相同,都支持翻转变色,每个棋子有自己的状态,不同的状态决定了其颜色。换句话说,棋子这个对象包含了一个处理翻转行为的方法和一个存放自身状态的属性。

    根据上面的分析创建Grid类来表示棋子,如代码清单2-1所示。

    代码清单2-1 棋子Grid类

     
     
    1. package
    2.  {
    3.          import flash.display.Graphics;
    4.          import flash.display.Sprite;
    5.  
    6.          public class Grid extends Sprite
    7.          {
    8.                  //棋子的值
    9.                  private var _value:Boolean;
    10.                  //圆的半径
    11.                  private var _radius:int;
    12.                  //id,即棋子在地图上的位置,用来寻找周围的棋子
    13.                  public var id:int;
    14.  
    15.                  public function Grid( value:Boolean = false, radius:int = 30)
    16.                  {
    17.                          _value = value;
    18.                          _radius = radius;
    19.                          //获取初始值后,画圆
    20.                          draw();
    21.                  }
    22.                  //翻转棋子
    23.                  public function doFlip():void
    24.                  {
    25.                          //改变值,并重新绘制圆
    26.                          _value = !_value;
    27.                          draw();
    28.                  }
    29.                  //判断棋子是不是白色状态
    30.                  public function isWhite():Boolean
    31.                  {
    32.                    return _value == true;
    33.                  }
    34.                  //每次状态变化时,都调用draw进行重绘
    35.                  private function draw():void
    36.                  {
    37.                          var g:Graphics = graphics;
    38.                          g.clear();
    39.                          //如果当前值为true,则用白色作为填充色
    40.                          if ( isWhite() )
    41.                          {
    42.                                  g.beginFill(0xFFFFFF);
    43.                          }
    44.                          else
    45.                          {
    46.                                  g.beginFill(0x333333);
    47.                          }
    48.                          //画圆,并保证Sprite的注册点在原点
    49.                          g.drawCircle(_radius, _radius, _radius);
    50.                          g.endFill();  
    51.                  }
    52.          }
    53.  }

    Grid类中没有使用图片素材,只是动态绘制了一个圆来代表棋子。初次创建或调用doFlip方法后,若棋子的值发生变化,都会调用draw方法重新绘制圆,并改变填充色。属性id很重要,记录了棋子本身在棋盘上的编号,后面我们将通过id值来寻找它四周的棋子。


    网站题目:AIRAndroid:创建棋子类Grid
    新闻来源:http://xwwzsj.com/article/djsjcop.html

    其他资讯

    售后响应及时

    7×24小时客服热线

    数据备份

    更安全、更高效、更稳定

    价格公道精准

    项目经理精准报价不弄虚作假

    合作无风险

    重合同讲信誉,无效全额退款