我有一个基于网格的游戏(平台游戏),我把所有东西都放在了瓷砖上.我有坚固和液体的瓷砖.我正试图找到一种很好的方法来使水砖以粗糙的方式模拟水.
目前我有现行系统:当水砖在另一个水砖上方添加时,它会在下面的水砖上加1.数字表示压力.
这就是目前的样子:
[0] <- This water tile has 0 in pressure.
[1] <- This water tile has 1 in pressure.
Run Code Online (Sandbox Code Playgroud)
如果我在底部附近添加另一个水砖,它会从左侧,右侧和上方搜索是否有水砖,并继承其周围的最大压力.
例:
[0]
[1][1]
Run Code Online (Sandbox Code Playgroud)
添加少量水砖后,这是一个更大的例子:
[0][0]
[1][1][1][1]
[2][2][2][2][2]
Run Code Online (Sandbox Code Playgroud)
然后我制作压力等于或大于1的每个水瓦片如果有自由空间则尝试向左/向右移动,然后将压力设置为0并检查是否可以从邻近的水瓦片中继承压力(如果有的话).
除了从顶部移除水瓦片的情况之外,该系统工作得非常好.
如果我从上一个示例中删除顶部水砖:
[1][1][1][1]
[2][2][2][2][2]
Run Code Online (Sandbox Code Playgroud)
然后我们有压力为1的顶行,现在应该有0,底行应该有1.
是否有一些更智能的系统我可以更好地实现这一点?
以下是限制:
每个图块只能检查其邻居图块.平铺可以定义任何功能.Tile可以有任何变量来存储数据.
你们能想出一个比我更好的系统吗?
我通常的测试案例是:
[]
[] should become [][]
[]
[]
[] should become [][][]
[]
[][][] should become [][][][]
Run Code Online (Sandbox Code Playgroud)
假设游戏运行了一段时间.
任何建议都会受到欢迎!
我想知道列表是否包含多次值.这就是我所拥有的.
has_dupes(List) ->
has_dupes(List, []).
has_dupes([Item|List], Seen) ->
case lists:filter(fun(Elem) -> Elem == Item end, Seen) of
[] ->
has_dupes(List, [Item|Seen]);
_ ->
true
end;
has_dupes([], _Seen) ->
false.
Run Code Online (Sandbox Code Playgroud)
有没有更简单/更简洁/更惯用的方式来做到这一点?我是Erlang的新手.
据我所知,一个类的任何静态成员像String或Int32也可以从相关的基本数据类型访问.所以,String.Format是一样的string.Format,Int32.MaxValue也是一样的int.MaxValue.
这两种形式有区别吗?对另一个人更喜欢吗?即使它们相同,人们通常认为它们更具可读性吗?
编辑:因为它们是相同的,从人的角度来看是首选吗?你想看String.Format或string.Format读别人的代码吗?
我已经安装并尝试自定义Jquery文件树,以便在单击文件夹名称时,将文件夹名称和路径返回给调用函数.目前它只展开和折叠文件夹,并在点击文件时返回文件名.
所以我也需要返回文件夹,看不到触发的位置.
我正在使用php连接器.下面链接是我下载示例代码的地方:http: //abeautifulsite.net/blog/2008/03/jquery-file-tree/
谢谢,艾德
我有一个表的问题.我只想设置一个边框底部,我想在td之间没有间隙,我的css看起来像这样:
#questions td
{
padding: 10px;
border-bottom: solid thin black;
}
Run Code Online (Sandbox Code Playgroud)
问题是我的表的ID.我已经尝试设置tr的边框底部,但这似乎什么都不做(至少在Chrome和Firefox中).我的表看起来像这样:

我遇到了一个异常并在观察窗口中查看变量,我看到了一些问号(???).这是否意味着它指向一个无效的地址?
iPhone开发新手 有人可以告诉我为什么
-(IBAction) handleTapGesture:(UIGestureRecognizer *) sender {
CGPoint *tapPoint = [sender locationInView:imageView];
NSLog(@"tapped");
}
Run Code Online (Sandbox Code Playgroud)
给我错误(对于CGPoint线):
初始化中不兼容的类型
我们正在为我们的客户开发一个Android应用程序.客户希望在其关于Android应用程序的邮件中包含条形码,这样当用户扫描条形码时,他/她将被直接带到Android市场上的应用程序进行下载.要做到这一点,客户需要知道市场上的确切URL,但我们不确定是否可以在实际将应用程序推向市场之前保留URL
我在Oracle数据库中有两个表(A和G),可以根据帐号连接在一起.对此的一个警告是,其中一个表(G)的记录比另一个少约80个.当我一起查询两个表时,我需要获取所有行,以便我们在缺少的80行的列中看到NULL数据.
我目前有一个Oracle语句,它使用以下"遗留"语法执行左外连接查询:
SELECT A.AccountNo,
A.ParcelNo,
A.LocalNo,
A.PrimaryUseCode,
A.DefaultTaxDistrict,
RTRIM(G.Section),
RTRIM(G.Township),
RTRIM(g.Range)
FROM tblAcct A, tblAcctLegalLocation G
WHERE A.verstart <= '20100917999' AND A.verend > '20100917999' AND A.DefaultTaxDistrict = '2291'
AND (SUBSTR(A.AccountNo,1,1) = 'R' or SUBSTR(A.AccountNo,1,1)= 'I')
AND SUBSTR(a.ParcelNo,1,1)<> '7' and substr(a.ParcelNo,1,1)<>'8'
AND A.AcctStatusCode IN ('A', 'T', 'E')
AND A.AccountNo = G.AccountNo(+)
AND G.verstart(+) <= '20100917999' and G.verend(+) > '20100917999'
ORDER BY A.ParcelNo, A.LocalNo
Run Code Online (Sandbox Code Playgroud)
我正在尝试将此查询转换为"标准"LEFT JOIN类型查询,因为我被告知较新版本的Oracle支持此语法.我试过基本的
LEFT OUTER JOIN ON A.AccountNo = G.AccountNo
Run Code Online (Sandbox Code Playgroud)
但这似乎不起作用.我的查询最多返回80行,少于全部数量.
任何人都可以告诉我我缺少什么或如何正确格式化查询?
android ×1
c# ×1
css ×1
css-tables ×1
debugging ×1
erlang ×1
file ×1
google-play ×1
grid ×1
html ×1
iphone ×1
java ×1
javascript ×1
jquery ×1
objective-c ×1
oracle ×1
outer-join ×1
primitive ×1
simulation ×1
sql ×1
static ×1
tiles ×1
tree ×1
treeview ×1
url ×1