#PA

使用dispatch_once创建单例(转载--备忘)

什么是单例呢?Wikipedia是如此定义的:在软件工程中,单例是一种用于实现单例的数学概念,即将类的实例化限制成仅一个对象的设计模式。或者我的理解是:单例是一种类,该类只能实例化一个对象。   尽管这是单例的实际定义,但在Foundation框架中不一定是这样。比如NSFileMange...

JSON.stringify()与JSON.parse()

JSON.stringify()方法是把javascript对象序列化为JSON字符串,JSON.parse()方法是把JSON字符串解析为原生的javascript值.例子:functionJSONstringifyAndparse(){//javascript对象.varbook={title:"javascrip...
代码星球 ·2020-04-06

Angular4.+ ngx-bootstrap Pagination 自定义分页组件

1.简介  本组件主要是实现了分页组件显示功能,通过使用ngx-bootstrapPagination分页组件实现。  基本逻辑:    1.创建一个分页组件,如:nggcomponent pager    2.父组件调用子组件,并向子组件传入基础配置信息    3.分页组件接收父组件传参,并在模板上进行配置...

construction const parameter问题 构造函数const引用参数问题

工程在window下编译没有任何问题,但是在linux(CentOS6)下编译就老是报错C++编译器已升级到最新版6.1.0错误如下:Infileincludedfrom/usr/local/include/c++/6.1.0/bits/stl_algobase.h:64:0,from/usr/local/includ...

[转]安装 SciTE 报错 No package ‘gtk+-2.0′ found

centos记事本,有时候感觉不够用,或者出毛病,打不开文件然后决定安装个其他的记事本, 找来找去,感觉 SciTE还可以,于是下载源码编译安装,结果Nopackage‘gtk+-2.0′found  搜了下就搜到个解决方法,记下:网上搜了一下,发现安装g...

pygame-KidsCanCode系列jumpy-part18-背景滚动

接上回继续,之前的游戏背景过于单调,今天加几朵白云的背景效果。要点:1.白云要有大有小,尽量模拟出远近层次的效果。2.兔子向上跳时,(背景)白云也要相应的滚动,但是为了视觉效果,速度要低于档板的速度(比如:1/2or1/3)。3.白云要放在最下层(即:Layer值最低),否则就会把其它物体挡住。 先定义白云:...

pygame-KidsCanCode系列jumpy-part17-mask-collide碰撞检测

这节我们研究下pygame的几种碰撞检测模式:如上图,左侧是默认的检测模式:基于矩形的检测(这也是性能最好的模式),右侧是基于圆形的检测(性能略差于矩形检测)。矩形检测法虽然性能好,但是缺点也很明显:检测不准确,上图中"飞机与目标"从视觉上看,根本没碰到。 为了改进,pygame给这二种模式,新增了xxx_r...

pygame-KidsCanCode系列jumpy-part16-enemy敌人

接上回继续,这次我们要给游戏加点难度,增加几个随机出现的敌人,玩家碰到敌人后GameOver。最终效果如下,头上顶个"电风扇"的家伙,就是敌人。一、先定义敌人类1#敌人类2classMob(pg.sprite.Sprite):3def__init__(self,game):4pg.sprite.Sprite.__ini...

pygame-KidsCanCode系列jumpy-part15-PowerUp加速器

这一节我们给游戏增加点额外的奖励,大多数游戏中都会有金币、装备啥的来激励玩家,在jumpy这个游戏中,我们也可以增加类似的道具:加速器。效果图如下:档板上会随机出现一些加速器(powerup),小兔子碰到它后,会获取额外的跳跃速度,跳得更高,得分自然也更高。实现原理如下:首先得有一个PowerUp类:1#PowerUp...

pygame-KidsCanCode系列jumpy-part14-背景音乐及音效

没有音乐和音效的游戏是没有灵魂的,这回讲解如何处理背景音乐及跳跃音效。加载music及sound的方法,之前已经写过,见:pygame笔记-8背景音乐&子弹音效 。先介绍一个很棒的生成各种音效的网站:https://www.bfxr.net/,该网站提供了一个音效生成器,界面如下:利用该工具,可以生成...

pygame-KidsCanCode系列jumpy-part13-改进跳跃

这节研究下跳跃如何做得更自然,先看看之前的跳跃有什么问题,我们把settings.py里的初始化参数调整下:1#startingplatform2#PLATFORM_LIST=[(5,HEIGHT-35),3#(WIDTH/2-50,HEIGHT*0.75),4#(WIDTH*0.12,HEIGHT*0.5),5#(W...

pygame-KidsCanCode系列jumpy-part12-platform图片

目前为止,Player的站立、行走、跳跃都是动画了,只有跳板(即:Platform类)还是难看的矩形,这节我们把Platform也换成图片:原来的Platform类长这个样子:1classPlatform(pg.sprite.Sprite):2def__init__(self,x,y,w,h):3pg.sprite.S...

pygame-KidsCanCode系列jumpy-part11-角色动画(下)

接上节继续,上节并没有处理向左走、向右走的动画效果,这节补上,看似很简单,但是有一些细节还是要注意:defjump(self):hits=pg.sprite.spritecollide(self,self.game.platforms,False)ifhits:self.vel.y=-PLAYER_JUMP#水平方向未...

pygame-KidsCanCode系列jumpy-part10-角色动画(上)

上一节学习如何利用spritesheet加载图片,但是player仍然是一张静态的图片,比较枯燥,我们要让它动起来!Player类,先把各种状态的图片加载起来:1#加载各种状态的图片序列2defload_images(self):3#站立状态的图片4self.standing_frames=[self.game.spr...

pygame-KidsCanCode系列jumpy-part9-使用spritesheet

做过前端的兄弟应该都知道csssprite(也称css精灵),这是一种常用的减少http请求次数的优化手段。把很多小图拼成一张大图,只加载1次,然后用css定位到不区的区域,从而展示不同的图片。游戏中也是类似的道理,如下图:每一个小图片,都有自己的x,y,width,height信息,通常会放在一个xml中,类似:1&...
首页上一页...357358359360361...下一页尾页