批次映射.是可能的相对坐标



我在批处理中非常擅长编程。我知道它不是为游戏而设计的,但我尝试了。我什至走了那么远,可以在发生事情的地方创建一张地图。问题是,我必须指定每个块。我需要相对坐标。这是我映射的示例。

set a1=O
set a2=O
set a3=O
set a4=O
set b1=O
set b2=O
set b3=O
set b4=O
set c1=O
set c2=O
set c3=O
set c4=O
:mapping
echo %a1%%a2%%a3%%a4%
echo %b1%%b2%%b3%%b4%
echo %c1%%c2%%c3%%c4%

这将导致:

OOOO
OOOO
OOOO

使用此图,我可以创建地图。因此,要使一个块更改,我必须执行"设置A2 = X"导致

OXOO
OOOO
OOOO

但是,当创建大型游戏时,尝试映射时会非常激烈。有什么办法可以使相对坐标工作?我能够用这个制作脆弱的鸟!这是指代码的粘贴链接:http://pastebin.com/h34xdsd8如果需要此代码:http://pastebin.com/j3ekmr4q。)也写了手。使用该代码,您可以看到它有多困难。请帮助,我需要相对坐标。

编辑:
for %%a in (a b c d e f g) do for /L %%i in (1,1,21) do set %%a%%i=0
此代码对我有用。它将设置我所有的块。
另一个问题。是否有任何简单的方法可以使用它来移动对象?就像按下左下一样,我的字符向左移动一个街区,而我不必指定该块,所以相对。

对于坐标,您可以尝试:

set /a x=12
set /a y=12
set "q_%x%_%y%=X"

这将q_12_12设置为X。您可以将for用于变量的定义和echo(尝试for /?以寻求for的帮助)。

最新更新