求解答~如何能随机创建对象
construct2吧
全部回复
仅看楼主
level 5
[乖]我正在制作的一个小游戏里需要每0.5s 在一个地方创建出一个Sprite,我是这样设计的,一个变量,每0.5s set or=int(random(1)) ;{or=1 create Sprite1}else{create Sprite2}结果发现一次这两个对象都会出现并且重叠在一起。我改成了{or=1 create Sprite1}{or=2 create Sprite2}但是还是没有改变,还有就是Sprite如何只做到改变一个Sprite的位置其他的Sprite都不会受到影响呢?就相当于单独继承自Sprite但是又独立自成对象。[泪]
2014年10月30日 07点10分 1
level 14
如果x,y一样,那么肯定会重叠。想不重叠就x,y也随机。在sprite创建完毕后,对sprite操作就是对当前创建的obj进行操作。因为c2本身没有create sprite from name。所以建议你使用rex的nickname插件来做,方便多了。
2014年10月30日 09点10分 2
不是这样的,我的想法是一次只出现一个Sprite,但是那个循环每次都会创建两个
2014年10月30日 10点10分
回复 q575405657 :贴出来看看
2014年10月30日 10点10分
level 14
你这个需求用rex的nickname插件很容易实现,如果sprite少就用choose,多就用random。
2014年10月30日 10点10分 3
Nickname可以省一堆检查字串的event
2014年10月30日 13点10分
回复 rexrainbow :无法获得为引用或属性为null 的indexof[啊]
2014年10月30日 14点10分
回复 q575405657 : 什麼?
2014年10月30日 15点10分
回复 q575405657 :贴图啊。看不懂
2014年10月30日 22点10分
level 9
设置变量
怪物出场=0//“怪物出场”的变量
function 每秒出怪() //每0.5秒随机怪物出场函数
{
every 0.5s
------------->怪物出场=random(1,x)//x你有的怪物数量
}
function 创建怪物() //根据这个怪物出场的变量出现不同的怪
{
if (怪物出场=1)
------------->creat (怪物1,random(800),random(600))//当怪物出城=1,随机在800x600的某一点上穿件怪物1
------------->set 怪物出场 = 0 //这个是防止重复生产怪物1
if (怪物出场=2)
------------->creat (怪物2,random(800),random(600))//当怪物出城=2,随机在800x600的某一点上穿件怪物2
------------->set 怪物出场 = 0 //这个是防止重复生产怪物2
if (怪物出场=3)
------------->creat (怪物3,random(800),random(600))//当怪物出城=3,随机在800x600的某一点上穿件怪物3
------------->set 怪物出场 = 0 //这个是防止重复生产怪物3
.
.
if (怪物出场=x)
------------->creat (怪物x,random(800),random(600))//当怪物出城=x,随机在800x600的某一点上穿件怪物x
------------->set 怪物出场 = 0 //这个是防止重复生产怪物x
}
希望看得懂吧![勉强]
2014年10月30日 14点10分 4
//之后是解释
2014年10月30日 14点10分
[冷]不明觉厉
2014年10月30日 22点10分
回复 罗曼T克 :感觉这个表情有点....好吧[滑稽]
2014年10月31日 08点10分
回复 Tom_in_house :没有恶意,只是觉得你这实现略复杂,如果想实现禁止重复或者循环重复,直接给sprite一个var作为标记,再用family随机就行了。。
2014年10月31日 08点10分
level 14
差点忘记了,还可以把sprite加入到一个family里,然后create family1即可达到随机产生sprite的目的。免费版本不支持family。
2014年10月31日 00点10分 5
1