cocos2dx-master之Aciton(一)

前端之家收集整理的这篇文章主要介绍了cocos2dx-master之Aciton(一)前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
  1. 刚看是学习cocos2dx,借用宝地做些笔记。<img alt="大笑" src="http://static.blog.csdn.net/xheditor/xheditor_emot/default/laugh.gif" />


直接上代码各种Action的练习

MainAcitivity.java


  1. package org.game.secondgame;
  2.  
  3. import org.cocos2d.layers.CCLayer;
  4. import org.cocos2d.layers.CCScene;
  5. import org.cocos2d.nodes.CCDirector;
  6. import org.cocos2d.opengl.CCGLSurfaceView;
  7.  
  8. import android.os.Bundle;
  9. import android.app.Activity;
  10. import android.text.Layout;
  11. import android.view.Menu;
  12.  
  13. public class MainActivity extends Activity {
  14. private CCGLSurfaceView view=null;
  15.  
  16. @Override
  17. protected void onCreate(Bundle savedInstanceState) {
  18. super.onCreate(savedInstanceState);
  19. view=new CCGLSurfaceView(this);
  20. setContentView(view);
  21. //获取一个导演
  22. CCDirector director=CCDirector.sharedDirector();
  23. director.attachInView(view);
  24. director.setDisplayFPS(true);
  25. director.setAnimationInterval(1/30.0);
  26. CCScene scene=CCScene.node();
  27. GameLayout gameLayout=new GameLayout();
  28. scene.addChild(gameLayout);
  29. director.runWithScene(scene);
  30. }
  31.  
  32.  
  33. @Override
  34. public boolean onCreateOptionsMenu(Menu menu) {
  35. // Inflate the menu; this adds items to the action bar if it is present.
  36. getMenuInflater().inflate(R.menu.main,menu);
  37. return true;
  38. }
  39. }

GameLayout.java


  1. package org.game.secondgame;
  2.  
  3. import org.cocos2d.actions.base.CCRepeatForever;
  4. import org.cocos2d.actions.instant.CCCallFuncN;
  5. import org.cocos2d.actions.interval.CCFadeOut;
  6. import org.cocos2d.actions.interval.CCMoveTo;
  7. import org.cocos2d.actions.interval.CCRepeat;
  8. import org.cocos2d.actions.interval.CCRotateTo;
  9. import org.cocos2d.actions.interval.CCSequence;
  10. import org.cocos2d.actions.interval.CCSpawn;
  11. import org.cocos2d.actions.interval.CCTintTo;
  12. import org.cocos2d.layers.CCLayer;
  13. import org.cocos2d.nodes.CCSprite;
  14. import org.cocos2d.types.CGPoint;
  15. import org.cocos2d.types.ccColor3B;
  16.  
  17. public class GameLayout extends CCLayer {
  18. CCSprite sprite;
  19. public GameLayout(){
  20. sprite=CCSprite.sprite("player.png");
  21. this.addChild(sprite);
  22. CGPoint init=CGPoint.ccp(100,100);
  23. sprite.setPosition(init);
  24. CGPoint target=CGPoint.ccp(300,300);
  25. CCMoveTo moveTo1=CCMoveTo.action(1,target);
  26. CCMoveTo moveTo2=CCMoveTo.action(1,init);
  27. CCRotateTo rotateTo=CCRotateTo.action(4,180);
  28. //顺序执行,先moveTo后rotateTo(可加多个动作)
  29. // CCSequence sequence=CCSequence.actions(moveTo,rotateTo);
  30. //同时执行moveTo,rotateTo(可加多个动作)
  31. // CCSpawn spawn=CCSpawn.actions(moveTo,rotateTo);
  32. //第一个参数:本地对象;第二个参数:所要调用函数
  33. // CCCallFuncN funcn=CCCallFuncN.action(this,"onActionFinish");
  34. // CCSequence sequence=CCSequence.actions(moveTo,funcn);
  35. //逐渐淡出
  36. // CCFadeOut fadeOut=CCFadeOut.action(5);
  37. //RGB决定颜色
  38. // ccColor3B color3B=ccColor3B.ccc3(255,0);
  39. //将精灵颜色转变为color3B颜色
  40. // CCTintTo tinTo=CCTintTo.action(5,color3B);
  41. CCSequence sequence=CCSequence.actions(moveTo1,moveTo2);
  42. //执行sequence行为3次
  43. // CCRepeat repeat=CCRepeat.action(sequence,3);
  44. CCRepeatForever repeatForever=CCRepeatForever.action(sequence);
  45. sprite.runAction(repeatForever);
  46. }
  47. public void onActionFinish(Object sender){
  48. System.out.println("onActionFinish");
  49. }
  50. }






猜你在找的Cocos2d-x相关文章