Вверх ↑
Ответов: 189
Рейтинг: 4
#1: 2010-08-06 09:02:05 ЛС | профиль | цитата
а для буилда 2x2 можно проверять в X.Y; X+1.Y; X+1.Y+1; X.Y+1 для 4x8 соответственно, тем более можно будет создать ещё матрицу допустим хиты, или процент сборки строения, а каждому отдельный индекс.
я сделаю чтоб для каждой кординать X был отдельный массив Y, где были индексы содержимого.
Все проблемы решены спс большое
------------ Дoбавленo в 07.29:
Хотя матрицу лучше ненадо, что если создать bmp с пикселами - индексаторами?
------------ Дoбавленo в 09.02:
теперь не наклеиваются, внизу что-то вроде мини мапа



Add(MainForm,2953706,21,105)
{
Width=200
Height=250
BorderStyle=0
Position=1
Point(onMouseDown)
link(onCreate,13649626:doCreate,[(85,125)(85,521)])
}
Add(Timer,15745283,343,210)
{
Interval=20
link(onTimer,12257353:doEvent1,[])
}
Add(StrList,934577,546,133)
{
Point(onGetString)
Point(doGetString)
Point(IdxToSelect)
link(onGetString,8240448:doSplit,[])
link(IdxToSelect,16177689:Position,[(566,121)(528,121)(528,261)(489,261)])
}
Add(For,16177689,483,217)
{
End=100
link(onEvent,934577:doGetString,[(520,223)(520,181)])
link(End,934577:Count,[(496,198)(559,198)])
}
Add(MultiStrData,8240448,609,140)
{
Char="."
Count=3
link(onPart1,8513470:doValue,[(691,146)(691,153)])
link(onPart2,5741224:doValue,[(669,153)(669,160)])
link(onPart3,11695560:doEvent1,[(699,160)(699,118)])
}
Add(Memory,8513470,742,147)
{
}
Add(Memory,5741224,697,154)
{
}
Add(PointXY,16117481,707,224)
{
link(X,8513470:Value,[(713,217)(748,217)])
link(Y,5741224:Value,[(720,217)(703,217)])
}
Add(IndexToChanel,11996168,805,119)
{
Count=4
link(onEvent2,12882557:doDraw,[(849,132)(849,247)(712,247)(712,362)])
link(onEvent3,3939332:doDraw,[(849,139)(849,219)(709,219)(709,300)])
link(onEvent4,12638837:doDraw,[(849,146)(849,288)(709,288)(709,431)])
}
Add(Img_Rectangle,3939332,721,294)
{
Point2AsOffset=0
Point(Point1)
Point(Point2)
link(Bitmap,16376460:Var1,[(727,276)])
link(Point1,9241532:Var2,[(741,275)])
link(Point2,14578662:Point,[(748,277)(751,277)])
}
Add(PointXY,14578662,745,228)
{
X=50
Y=30
}
Add(Hub,11695560,756,112)
{
link(onEvent1,11996168:doEvent,[(788,118)(788,125)])
link(onEvent2,3917663:doData,[(780,125)(780,144)(798,144)(798,174)])
}
Add(Bitmap,16720311,889,91)
{
HWidth=200
HHeight=200
FillColor=16777215
Point(doCreate)
}
Add(DoData,3917663,917,168)
{
link(onEventData,707096:doLoad,[(961,174)(961,160)])
link(Data,4924875:Var3,[(923,138)])
}
Add(GetDataEx,4924875,889,133)
{
link(Data,16720311:Bitmap,[])
}
Add(Image,707096,973,154)
{
Width=200
Height=200
Point(MouseX)
Point(MouseY)
Point(onMouseDown)
link(onMouseDown,3234301:doEvent,[(1013,167)(1013,181)])
}
Add(Memory,15846558,231,126)
{
link(onData,1576570:doCalc,[])
}
Add(FormatStr,9466776,455,126)
{
DataCount=3
Mask="%2.%3.%1"
link(onFString,934577:doAdd,[(496,132)(496,139)])
link(Str1,15846558:Value,[(461,114)(349,114)(279,114)(279,173)(237,173)])
link(Str2,1576570:Result,[(468,114)(407,114)(407,169)(346,169)])
link(Str3,13874571:Result,[(475,114)(437,114)(437,170)(398,170)])
}
Add(Img_Rectangle,12882557,724,356)
{
Point2AsOffset=0
Point(Point1)
Point(Point2)
link(Bitmap,2156202:Var2,[])
link(Point1,2685494:Var2,[])
link(Point2,15535645:Point,[(751,344)(779,344)(779,371)(808,371)])
}
Add(GetDataEx,16376460,777,271)
{
Angle=1
link(Data,4924875:Var2,[(895,276)])
}
Add(GetDataEx,9241532,707,266)
{
link(Data,16117481:Point,[])
}
Add(PointXY,15535645,802,327)
{
X=10
Y=10
}
Add(Hub,12257353,410,210)
{
OutCount=3
link(onEvent1,16720311:doCreate,[(656,216)(656,111)])
link(onEvent2,16177689:doFor,[])
link(onEvent3,13752899:doData,[(471,230)(471,572)])
}
Add(Img_Rectangle,12638837,721,425)
{
Point2AsOffset=0
BgColor=255
Style=1
Point(Point1)
Point(Point2)
link(Bitmap,2156202:Var1,[(727,383)(721,383)(721,341)])
link(Point1,2685494:Var1,[(741,379)(735,379)(735,334)])
link(Point2,15004149:Point,[(748,413)(776,413)(776,440)(805,440)])
}
Add(PointXY,15004149,799,396)
{
X=10
Y=20
}
Add(GetDataEx,2156202,724,336)
{
link(Data,16376460:Var2,[(730,318)(783,318)(786,299)])
}
Add(GetDataEx,2685494,738,329)
{
link(Data,9241532:Var3,[(744,271)])
}
Add(PointHint,9101039,399,21)
{
Info=#39:x.y.z x - ось x y - ось y z - тип|
Width=267
}
Add(MathParse,13874571,392,126)
{
DataCount=1
MathStr="%1 - %1 mod 10"
link(onResult,9466776:doString,[])
link(X1,7219633:Var2,[(398,114)(696,114)(696,212)(993,212)])
}
Add(MathParse,1576570,340,126)
{
DataCount=1
MathStr="%1 - %1 mod 10"
link(onResult,13874571:doCalc,[])
link(X1,16140697:Var2,[(346,114)(666,114)(666,212)(932,212)(941,212)(941,222)(986,222)])
}
Add(IndexToChanel,3234301,1022,175)
{
link(onEvent1,15277335:doCalc,[(1080,181)(1080,259)])
}
Add(Switch,9990749,1071,322)
{
Default=0
Point(doCheck)
Point(onOn)
Point(onOff)
Point(DataOn)
Point(doOn)
link(onOn,1103828:doCompare,[])
link(DataOn,15803272:Var3,[(1077,310)(984,310)(984,713)])
}
Add(MathParse,15277335,1107,253)
{
DataCount=1
MathStr="%1 div 10"
link(onResult,9415545:doCalc,[])
link(X1,16140697:Var3,[(1113,222)])
}
Add(MathParse,9415545,1161,253)
{
DataCount=1
MathStr="%1 div 10"
link(onResult,8174586:doGetPixel,[(1205,259)(1205,301)(1010,301)(1010,342)])
link(X1,7219633:Var3,[(1167,208)])
}
Add(GetDataEx,16140697,980,217)
{
link(Data,707096:MouseX,[])
}
Add(GetDataEx,7219633,987,203)
{
link(Data,707096:MouseY,[])
}
Add(Memory,3978340,511,672)
{
Default=Integer(1)
}
Add(Hub,11147489,1184,329)
{
link(onEvent1,12970348:doDraw,[(1208,335)(1208,370)])
link(onEvent2,15846558:doValue,[(1210,342)(1210,237)(219,237)(219,132)])
}
Add(GetDataEx,15803272,630,708)
{
Angle=3
link(Data,3978340:Value,[(517,713)])
}
Add(Bitmap,13649626,557,501)
{
HWidth=20
HHeight=20
Point(doCreate)
}
Add(Button,13440950,452,566)
{
Left=175
Top=230
Width=20
Caption="0"
}
Add(DoData,13752899,518,566)
{
link(onEventData,4988505:doLoad,[(564,572)(564,570)])
link(Data,7710408:Var2,[(524,550)(563,550)])
}
Add(Image,4988505,578,564)
{
Left=130
Top=225
Width=20
Point(MouseX)
Point(MouseY)
Point(onMouseDown)
}
Add(Message,12785515,1176,406)
{
Message="NO!"
Caption=" "
}
Add(Img_GetPoint,8174586,1022,336)
{
link(onGetPixel,16765156:doGetRGB,[(1064,342)(1064,375)(1010,375)(1010,384)])
link(Bitmap,7710408:Var3,[(1028,325)(849,325)(849,544)])
link(X,15428359:Var2,[(1035,310)(1113,310)])
link(Y,10099506:Var1,[(1042,310)])
}
Add(GetDataEx,7710408,557,539)
{
link(Data,13649626:Bitmap,[])
}
Add(ToRGB,16765156,1022,378)
{
link(onResult,9990749:doCheck,[(1062,384)(1062,342)])
link(Color,8174586:Color,[])
}
Add(If_else,1103828,1127,329)
{
Op2=Integer(0)
link(onTrue,11147489:doEvent1,[])
link(onFalse,12785515:doMessage,[(1167,342)(1167,412)])
link(Op1,16765156:G,[(1133,317)(1084,317)(1084,422)(1035,422)])
}
Add(Hub,6328440,472,665)
{
link(onEvent1,9990749:doOn,[(876,671)(876,349)])
link(onEvent2,3978340:doValue,[])
}
Add(Img_Point,12970348,1218,364)
{
X=3
Y=3
Color=16777215
Point(X)
Point(Y)
link(Bitmap,7710408:Var1,[(1224,352)(554,352)(554,544)])
link(X,15428359:Var3,[(1231,292)])
link(Y,10099506:Var3,[(1238,310)])
}
Add(GetDataEx,15428359,1107,287)
{
link(Data,15277335:Result,[])
}
Add(GetDataEx,10099506,1161,305)
{
link(Data,9415545:Result,[])
}


карма: 0

0