Вверх ↑
Ответов: 2200
Рейтинг: 673
#1: 2020-02-23 13:01:26 ЛС | профиль | цитата
Вторую схему форум обрезал, получилось длинное сообщение.
Схема 2

Add(MainForm,14216276,49,161)
{
Width=1200
Height=839
Position=1
Point(onClose)
link(onCreate,8694556:doEvent1,[])
link(onClose,7482565:doEnum,[(107,188)(107,279)])
}
Add(PaintBox,8412952,721,588)
{
Left=5
Top=5
Width=1000
Height=800
Color=15780518
Point(MouseX)
Point(MouseY)
}
Add(StrList,2670249,469,133)
{
Strings=#9:0.760.0.0|10:40.760.0.0|10:80.760.0.0|11:120.760.0.0|11:160.760.0.0|11:200.760.0.0|11:240.760.0.0|11:280.760.0.0|11:320.760.0.0|11:360.760.0.0|11:400.760.0.0|11:440.760.0.0|11:480.760.0.0|11:520.760.0.0|11:560.760.0.0|11:600.760.0.0|11:640.760.0.0|11:680.760.0.0|11:720.760.0.0|11:760.760.0.0|11:800.760.0.0|11:840.760.0.0|11:880.760.0.0|11:920.760.0.0|11:960.760.0.0|7:0.0.0.0|8:40.0.0.0|8:80.0.0.0|9:120.0.0.0|9:160.0.0.0|9:200.0.0.0|9:240.0.0.0|9:280.0.0.0|9:320.0.0.0|9:360.0.0.0|9:400.0.0.0|9:440.0.0.0|9:480.0.0.0|9:520.0.0.0|9:560.0.0.0|9:600.0.0.0|9:640.0.0.0|9:680.0.0.0|9:720.0.0.0|9:760.0.0.0|9:800.0.0.0|9:840.0.0.0|9:880.0.0.0|9:920.0.0.0|9:960.0.0.0|8:0.40.0.0|8:0.80.0.0|9:0.120.0.0|9:0.160.0.0|9:0.200.0.0|9:0.240.0.0|9:0.280.0.0|9:0.320.0.0|9:0.360.0.0|9:0.400.0.0|9:0.440.0.0|9:0.480.0.0|9:0.520.0.0|9:0.560.0.0|9:0.600.0.0|9:0.640.0.0|9:0.680.0.0|9:0.720.0.0|10:960.40.0.0|10:960.80.0.0|11:960.120.0.0|11:960.160.0.0|11:960.200.0.0|11:960.240.0.0|11:960.280.0.0|11:960.320.0.0|11:960.360.0.0|11:960.400.0.0|11:960.440.0.0|11:960.480.0.0|11:960.520.0.0|11:960.560.0.0|11:960.600.0.0|11:960.640.0.0|11:960.680.0.0|11:960.720.0.0|10:40.640.0.0|10:80.640.0.0|11:160.720.0.0|11:160.680.0.0|11:160.640.0.0|11:160.600.0.0|11:200.680.0.0|11:240.680.0.0|11:280.680.0.0|11:320.680.0.0|11:320.640.0.0|11:320.600.0.0|11:200.640.6.0|11:240.640.6.0|11:280.640.6.0|11:280.600.6.0|11:240.600.6.0|11:200.600.6.0|11:200.720.1.0|11:240.720.1.0|11:280.720.1.0|11:320.720.1.0|11:360.720.1.0|11:400.720.1.0|11:440.720.1.0|11:480.720.1.0|11:320.200.3.0|11:320.240.3.0|11:320.280.3.0|11:360.200.3.0|11:400.200.3.0|11:440.200.3.0|11:480.200.3.0|11:360.240.8.0|11:440.240.8.0|11:480.240.3.0|11:400.240.3.0|11:360.280.3.0|11:400.280.3.0|11:440.280.3.0|11:480.280.3.0|11:400.320.3.0|11:520.720.7.0|11:560.720.7.0|11:600.720.7.0|11:640.720.7.0|11:680.720.7.0|11:720.720.7.0|11:760.720.1.0|11:800.720.1.0|11:840.720.1.0|11:880.720.1.0|11:920.720.1.0|11:920.640.0.0|11:880.600.0.0|11:840.560.0.0|11:800.520.0.0|11:760.520.0.0|11:720.520.0.0|11:680.520.0.0|11:800.560.0.0|11:840.600.0.0|11:880.640.0.0|11:680.560.0.0|11:640.560.0.0|11:600.560.0.0|11:560.560.0.0|11:520.560.0.0|11:520.520.0.0|11:560.520.4.0|11:600.520.4.0|11:640.520.4.0|12:592.233.0.45|12:672.273.0.45|12:752.233.0.45|11:672.73.0.45|11:920.600.2.0|11:920.560.2.0|11:880.560.2.0|11:920.520.2.0|11:880.520.2.0|11:840.520.2.0|10:40.400.0.0|10:80.400.0.0|11:120.400.0.0|11:160.400.0.0|10:40.360.0.0|10:40.320.0.0|10:80.360.0.0|11:120.360.0.0|10:80.320.0.0|10:40.280.0.0|11:160.560.0.0|11:120.560.0.0|10:80.560.0.0|10:40.480.0.0|10:80.480.0.0|11:120.480.0.0|11:160.480.0.0|11:200.480.0.0|11:240.480.0.0|11:280.480.0.0|11:320.480.0.0|11:360.480.0.0|11:520.480.0.0|
}
Add(RGN_Rect,8233066,574,168)
{
Point2=2621480
Point2AsOffset=0
Point(doClear)
link(onCreateRect,14755726:doRotate,[(614,174)(614,188)])
link(Point1,13052045:Point,[])
}
Add(ArrayEnum,8636513,483,182)
{
link(onItem,1845762:doEvent1,[(527,188)(527,167)])
link(onEndEnum,3235548:doEvent1,[])
link(Array,2670249:Array,[])
}
Add(RGN_Rotate,14755726,623,182)
{
Point(doClear)
link(onRotate,15724864:doCombine,[])
link(Angle,827761:Part4,[])
}
Add(MultiStrPart,827761,609,49)
{
Char="."
Count=4
}
Add(Hub,1845762,532,161)
{
link(onEvent1,827761:doSplit,[(564,167)(564,55)])
link(onEvent2,8233066:doCreateRect,[])
}
Add(PointXY,13052045,574,126)
{
link(X,827761:Part1,[(580,104)(615,104)])
link(Y,827761:Part2,[(587,109)(622,109)])
}
Add(Timer,16084674,371,574)
{
Interval=33
link(onTimer,9089622:doEvent1,[])
}
Add(Hub,9089622,413,574)
{
OutCount=3
link(onEvent1,11306518:doEvent1,[(449,580)(449,447)])
link(onEvent2,8412952:doClear,[(574,587)(574,601)])
link(onEvent3,7541712:doDraw,[])
}
Add(Hub,3235548,532,189)
{
link(onEvent1,8233066:doClear,[(560,195)(560,181)])
link(onEvent2,14755726:doClear,[(613,202)(613,195)])
}
Add(InfoTip,5692103,455,14)
{
Info=#4:Load|
Width=477
Height=242
}
Add(CableData,7004078,728,630)
{
link(Wire1,8412952:MouseX,[])
link(Wire2,8412952:MouseY,[])
}
Add(LineBreakEx,6050920,728,658)
{
Caption="ms"
Type=3
link(_Data,7004078:Cable,[])
}
Add(CableVar,11459156,133,224)
{
Count=3
link(Cable,7992788:getVar,[])
}
Add(LineBreakEx,7992788,133,196)
{
Caption="arr"
Type=2
}
Add(RGN_GetData,2695321,203,273)
{
link(onGetData,13945161:doRead,[])
}
Add(ArrayEnum,7482565,133,273)
{
link(onItem,2695321:doGetData,[])
link(onEndEnum,8317484:doSetText,[(177,286)(177,412)])
link(Array,11459156:Wire1,[])
}
Add(ArrayRW,13945161,245,273)
{
link(onRead,16598545:doRead,[])
link(Array,11459156:Wire2,[(251,255)(146,255)])
link(Index,15569570:Var2,[])
}
Add(ArrayRW,16598545,287,273)
{
link(onRead,6532347:doString,[(335,279)(335,385)(191,385)(191,349)])
link(Array,11459156:Wire3,[(293,247)(153,247)])
link(Index,15569570:Var3,[(300,261)])
}
Add(FormatStr,6532347,203,343)
{
DataCount=4
Mask="%1.%2.%3.%4"
link(onFString,2073319:doAdd,[])
link(Str1,2695321:Left,[])
link(Str2,2695321:Top,[])
link(Str3,13945161:Item,[(223,324)(251,324)])
link(Str4,16598545:Item,[(230,332)(293,332)])
}
Add(GetDataEx,15569570,252,256)
{
Angle=3
link(Data,7482565:Index,[(192,261)(192,317)(146,317)])
}
Add(InfoTip,5981560,119,189)
{
Info=#4:Save|
Width=274
Height=249
}
Add(ClipboardHook,8317484,343,406)
{
link(Text,2073319:Text,[])
}
Add(RGN_Elliptic,10071187,609,315)
{
Point1=47185960
Point2=2621480
Point2AsOffset=0
Point(doClear)
link(onCreateElliptic,8464650:doWork2,[])
}
Add(StrList,2073319,343,343)
{
}
Add(Hub,8694556,413,175)
{
OutCount=4
link(onEvent1,2381860:doCreate,[(461,181)(461,41)])
link(onEvent2,8636513:doEnum,[])
link(onEvent3,10071187:doCreateElliptic,[(449,195)(449,321)])
link(onEvent4,10071187:doClear,[(443,202)(443,328)])
}
Add(RGN_Draw,4153564,651,588)
{
Outline=0
Color=16776960
Point(Pattern)
link(onDraw,8412952:doRefresh,[])
link(Bitmap,10949674:Var2,[])
link(Region,1327578:Var2,[])
}
Add(RGN_Offset,15590097,889,476)
{
X=5
link(onOffset,2702286:doWork2,[])
link(Region,12193029:Var2,[])
}
Add(RGN_Combine,608873,658,315)
{
Mode=4
}
Add(RGN_Collision,3669781,959,476)
{
link(onFalse,8464650:doWork1,[(1016,489)(1016,288)(648,288)])
link(Region2,9761858:Var3,[(972,226)])
}
Add(HubEx,8464650,644,315)
{
link(onEvent,608873:doCombine,[])
}
Add(RGN_Offset,2754314,896,434)
{
Y=5
link(onOffset,2702286:doWork1,[(935,440)])
link(Region,11733065:Var2,[])
}
Add(RGN_Offset,9481434,903,392)
{
Y=-5
link(onOffset,8681195:doWork1,[(949,398)])
link(Region,11733065:Var3,[(909,362)])
}
Add(RGN_Offset,14600466,882,518)
{
X=-5
link(onOffset,2702286:doWork3,[(935,524)])
link(Region,16460696:Var2,[])
}
Add(GetDataEx,1327578,658,357)
{
link(Data,608873:Result,[])
}
Add(GetDataEx,11733065,896,357)
{
Angle=3
link(Data,12193029:Var3,[])
}
Add(GetDataEx,12193029,889,357)
{
Angle=3
link(Data,16460696:Var3,[])
}
Add(GetDataEx,16460696,882,357)
{
Angle=3
link(Data,1327578:Var3,[])
}
Add(HubEx,8681195,945,476)
{
link(onEvent,3669781:doCollision,[])
}
Add(HubEx,2702286,931,476)
{
link(onEvent,8681195:doWork2,[])
}
Add(Keyboard,13873403,798,511)
{
Key=65
link(onReadKey,4583430:doEvent,[])
}
Add(Keyboard,8186697,798,469)
{
Key=68
link(onReadKey,7472050:doEvent,[])
}
Add(Keyboard,5669077,798,427)
{
Key=83
link(onReadKey,11639003:doEvent,[])
}
Add(Keyboard,3782309,798,385)
{
Key=87
link(onReadKey,5500737:doEvent,[])
}
Add(Hub,11306518,756,441)
{
OutCount=4
link(onEvent1,3782309:doReadKey,[(780,447)(780,391)])
link(onEvent2,5669077:doReadKey,[(790,454)(790,433)])
link(onEvent3,8186697:doReadKey,[(789,461)(789,475)])
link(onEvent4,13873403:doReadKey,[(783,468)(783,517)])
}
Add(IndexToChanel,5500737,840,385)
{
link(onEvent2,9481434:doOffset,[])
}
Add(IndexToChanel,11639003,840,427)
{
link(onEvent2,2754314:doOffset,[])
}
Add(IndexToChanel,7472050,840,469)
{
link(onEvent2,15590097:doOffset,[])
}
Add(IndexToChanel,4583430,840,511)
{
link(onEvent2,14600466:doOffset,[])
}
Add(InfoTip,5065822,735,315)
{
Info=#9:Collision|
Width=267
Height=242
}
Add(InfoTip,14263195,525,567)
{
Info=#4:Draw|
VAlign=2
Width=281
Height=116
}
Add(Bitmap,2381860,756,21)
{
HWidth=1000
HHeight=800
FillColor=15780518
Point(doCreate)
}
Add(RGN_Draw,16547920,756,182)
{
UseOffsetFill=1
PatternStyle=0
Outline=0
Color=0
BgColor=0
Point(Pattern)
link(Bitmap,7492305:Var2,[])
link(Region,14755726:Result,[(769,170)(792,170)(792,235)(629,235)])
}
Add(BitmapArray,209399,714,119)
{
Bitmaps=['brick'=[ZIPF612000078DA73F2FD26C400066640AC8184191924C0E207A0F2C8C0A1E13F1908A80D8846F58EEA1DD53BB07A471A1A8DFD51BDA37A87AEDED1F26A34E58CEA1DD53BDABE1A6D5F8DEA1DD53BAA77B47D450902008CE22F38],'stone'=[ZIPF612000078DA73F2FD26C400066640AC8184191924C0E207A0F2C8E030CDC06230A80783C37404A4DA4B2D77AE0603886983D95EE2D553370607CADEC1EF424AECA54F5861BA70A0EC2535B5532B1E07CA5EEA9A4F5D5FD0C75E62C28A16FE1A287B691D4783CDDEE1DDBA18C9A9821661458C9903652FFEB022AFEE2626FC07CADE81ADBB079BBDA360E802F24A0CFCBA685752516E2FAE1C815F2FFE7C444C1F61A0ECA54FAD4ABC690365EFF003007359C894],'planks'=[ZIPF612000078DA73F2FD26C400066640AC8184191924C0E207A0F22860FEB91185F84EFE1F45A368140D51345A5E8DA251348A46CBAB415A5E9DF80F42D40D4662CC1C287B47D1281A2DAF46DB57A368148D22BA230056BFF9FF],'stones'=[ZIPF612000078DA73F2FD26C400066640AC8184191924C0E207A0F2C8E03059A01E0C46F58EEA1DD53BB07A471A188DFD51BDA37A87AEDED1F26A34E58CEA1DD53BDABE1A6D5F8DEA1DD53BAA77B47D450900008B2CE725],'dirt'=[ZIPF612000078DA73F2FD26C400066640AC8184191924C0E207A0F2C820BC6A27101D0603089B9E68A0EC1D45D48A17EAC620ADED1D4DE7A361323C426634D646D148AE5F685DFE53D75EFA8427FDDD3650F68EB6A0069BBDA368A4B5B8465B20433DDC4663903C17D2CEFD0365EFD045006E95DDE8],'color'=[ZIP760A000078DADDD4316ED5401006E0454208517006979C807A44CF1D7C0AEA398A8B88734C41C519287C84F4148F6FC70412F41E44281209F61B3DC7FFC4DE6F779377EF3FBC1A7DBC7D3EC69BF1B39E8D977D3F5E8CF1E9F5516EDE3AB23F23F3F89AA78BAA1AF5A5C6F5E78F632CA156255836556AF7D0F9E045B90879C8431EF290BB3556F92A5FFDB0CA57F92A5FF7EFEF95A73CD71EC34879CA53EE726CF24DBEC937F9E6E626DFE4BE46C94B5EF29A03DFE6E095DC67ECF25DBECB77F92EDFE5FB7E0C7F2C6A9EAB4AB5A952FB415BE4FCC11FFCC11FFCC1DF6C4DE122F8833FF8833FF87B4AF8833FF8833FF8833FF87BBAF8833FF8833FF8833FF87B2AF9833FF8833FF8833FF87B9AF9833FF8833FF8833FF8E712047FF0077FF0077FF007FFB1DE4BAB93BFD79E3FF993BF97863FF9933FF9933FF993BF978D3FF9133681D2A0D3C0D2CB7B49F9933FF9933FF9933FF97BB9BD243D2835E7DC83FCC99FFCBD15F8933FF9933FF9933FF97B9BF0277FF2277FF2277FF2CF2D94FCC99FFCC99FFCC99FFCBD7DF8AB577C6D75F1579FFBB1B5F88BBFF88BBFF88BBFF87BDBF1177FF1177FF1177FF1F796E42FFEE22FFEE22FFEE2EFEDCA5FFCC55FFC055D6065F0BD95F98BBFF88BBFF88BBFF87B9B1B64194879597960F9A5EBAFA77135E7694EF038F5679C4EC7D73CE7ADF9F3831F57F7389E52DFEF903F2EFF301DF7E8EB869BBEB37379ABF156FB59D1D9BE4BD0D3DDF75E9C91BB8E8B53F7D4D6F711F79DFDA33A5DDC07FFA4AFFF8DFCDA7773F32FFA1EB3F7BFD8570F7B7C0393F921C8],'water'=[ZIPF612000078DA73F2FD26C400066640AC8184191924C0E207A0F2C8E08C873D85E840671610516ECE60B0F750430A10ED9B5480071D684D07A2E161EF7045D44D1BC8B1B3BF2F1788068FBD1035C4A40D8809C8290ABF5FA03E029B8C991A07CA5E62C20D623E8ADB3C4108220271392D521DEDECC55F3ED0AE6418287B71A1B36044FFF264A0EC1D396878C72CA46480E4A6D31EF6A7E9D59EA1BFBDC4D70BC8253CC49DA7423D806868D94B1E3AEDE30444B8EA3862D0D0B277B4241F45431D414A09CCD62CC92D5B12CB5BEADA8BD9A243D68B6C0BA494809418F8CB52FC2D5B6435F4B7177FF94FCF16EC40D93BBC11000B58B8B5],'grass'=[ZIPF612000078DA73F2FD26C400066640AC8184191924C0E207A0F2C820BC6A27101D0603089B9E68A0EC1D45D48A17EAC620ADED1D4DE7A361323C426634D646D148AE5F685DFE53D75EFA8427FDDD3650F68EB6A0069BBDA368A4B5B8465B204331DC7C362A8DA2618CFC56990211FD6D1C287B012F1B7114],'killer'=[ZIPF612000078DA73F2FD26C400066640AC8184191924C0E207A0F2C84045E6ED281A4514A037603472EC1D45C323D5BD03A3A162EF281A45A368148DA25134D4D140D580A335EF680F823EF6229B4C4FDF0D94BDA368140D0C02008DDA5CCE],'checkpoint'=[ZIP760A000078DAE5D4316ED44018C5F1414238A2E00C2E3901F5133D4DEA447203524A1AEA77141768CB9CE115549C21858F902A5B5098FF7C8EC44A2058C00512E3FDB28EDF177B7E9E81D76F3E3C6F355E3D6DED65FB564FDA455DD7B3D63EBDD88A8B27C3F569F6F6D50F4E92B4DCA5DD7F3EB4368A9A288271A6422DDCB4DF78A43811B9C8452E729173A94DE413F9C42F13F9443E914FCBE373C94DEEA9E6D04C6E729373DA66F2997C269FC9672ECEE433395F2DE4210F79FAC4E73E798A9C4F5BC817F2857C215FC817F265D9A6DF46AA1F13656AA6422D1B6D24C72FFCC22FFCC22FFCC5A6499C08BFF00BBFF00B7FBD12FCC22FFCC22FFCC22FFCF5BAF00BBFF00BBFF00BBFF0D7ABC42FFCC22FFCC22FFCC25FAF19BFF00BBFF00BBFF00B7F5F02E1177EE1177EE1177EE1DFD67B2CB5F1D7DAE3377EE3AFA5C16FFCC66FFCC66FFCC65FCB86DFF80DD680CCA4CDC4CCC36B49F11BBFF11BBFF11BBFF1D772F3107323D3ECBE07F11BBFF1D756C06FFCC66FFCC66FFCC65FDB04BFF11BBFF11BBFF11B7FDF42C66FFCC66FFCC66FFCC65FDB077F6AC5A752077FEA58B6AD853FF8833FF8833FF883BFB61DFEE00FFEE00FFEE00FFEDA92F8833FF8833FF8833FF86BBBE20FFEE00FFE800EB030F9DACAF8833FF8833FF8833FF86B9B33C93091F0B070C3F047F75FD6F6B1BFA7FE82DB5A9FB6AEDB573FFA257EDCDCBC3F6B9CDB77FABFCA5B463B639CDBF78EF13FF51D0EFBF6ED3DBFDBDB7DFBFA7387A1B55EFBF50DC3C3C3BA5E5EEED3B73E8EADFBC733F893BEDE733CF6DEBFEBBBB8584FC6F1380CDF9B7EA7AFCFBF3FADD7F6F4DEF9EFF4EDEDDD7B3DF6DE2F7BEEE7EBEBABABFE1E7EF5EFE8677D5F01FD2BB2B2],'slime'=[ZIP760A000078DADDD4316ED5401006E0454208517006979C807A44CF1D7C0AEA398A8B88734C41C519287C84F4148F6FC70412F41E44281209F61B3DC7FFC4DE6F779377EF3FBC1A7DBC7D3EC69BF1B39E8D977D3F5E8CF1E9F5516EDE3AB23F23F3F89AA78BAA1AF5A5C6F5E78F632CA156255836556AF7D0F9E045B90879C8431EF290BB3556F92A5FFDB0CA57F92A5FF7EFEF95A73CD71EC34879CA53EE726CF24DBEC937F9E6E626DFE4BE46C94B5EF29A03DFE6E095DC67ECF25DBECB77F92EDFE5FB7E0C7F2C6A9EAB4AB5A952FB415BE4FCC11FFCC11FFCC1DF6C4DE122F8833FF8833FF87B4AF8833FF8833FF8833FF87BBAF8833FF8833FF8833FF87B2AF9833FF8833FF8833FF87B9AF9833FF8833FF8833FF8E712047FF0077FF0077FF007FFB1DE4BAB93BFD79E3FF993BF97863FF9933FF9933FF993BF978D3FF9133681D2A0D3C0D2CB7B49F9933FF9933FF9933FF97BB9BD243D2835E7DC83FCC99FFCBD15F8933FF9933FF9933FF97B9BF0277FF2277FF2277FF2CF2D94FCC99FFCC99FFCC99FFCBD7DF8AB577C6D75F1579FFBB1B5F88BBFF88BBFF88BBFF87BDBF1177FF1177FF1177FF1F796E42FFEE22FFEE22FFEE2EFEDCA5FFCC55FFC055D6065F0BD95F98BBFF88BBFF88BBFF87B9B1B64194879597960F9A5EBAFA77135E7694EF038F5679C4EC7D73CE7ADF9F3831F57F7389E52DFEF903F2EFF301DF7E8EB869BBEB37379ABF156FB59D1D9BE4BD0D3DDF75E9C91BB8E8B53F7D4D6F711F79DFDA33A5DDC07FFA4AFFF8DFCDA7773F32FFA1EB3F7BFD8570F7B7C0393F921C8],'angryslime'=[ZIPF612000078DA73F2FD26C400066640AC8184191924C0E207A0F2C86089E7E2513402D0223042885C5BB81F889EEF3F4121BABFE130100D3E7BD1D1832D478088727B216870DB0B0AF37393760111E53642E26B70DB0B422B029601D199FE9D4004491BA4A6A58BD37603D1EA90E54034D8EC5D0A46B42807F0A381B27770DB425D7BF1E9DD91B30E8890D3CCD1E6AD404489CA81B6171F82E825A6DC235EE560B6F740D5662022C634E2550EACBD131CFA800897ECDAC81540043113129290F44389CA81B55747440788E859DA74D97501D140D90BE935D459D40211AD6D6CB0AC0722296E49201A587BB958B980A8CCA41488A86B579B750B10A908A8001166EF6CA0EC4506F27CF24064276D0B44B5E6354044AA5D7DF63D4064226E0C440C448381B21713405202C425893A89405468540044D5E6D540046107AA040211C4CD0C54020365EF2818054305000005816F09]]
UseName=1
}
Add(ArrayRW,6023421,714,182)
{
link(onRead,16547920:doDraw,[])
link(Array,209399:Array,[])
link(Index,827761:Part3,[(727,164)(629,164)])
}
Add(RGN_Combine,15724864,672,182)
{
link(onCombine,6023421:doRead,[])
link(Region1,9761858:Var1,[(678,170)(666,170)(666,226)])
}
Add(GetDataEx,9761858,672,221)
{
link(Data,15724864:Result,[])
}
Add(Img_Bmp,7541712,595,588)
{
link(onDraw,4153564:doDraw,[])
link(Bitmap,10949674:Var1,[(601,575)])
link(SourceBitmap,13913221:Var,[])
}
Add(GetDataEx,10949674,651,570)
{
Angle=1
link(Data,8412952:Bitmap,[(717,575)(717,635)(727,635)])
}
Add(GetDataEx,7492305,756,56)
{
link(Data,2381860:Bitmap,[])
}
Add(LineBreak,9806582,770,70)
{
Caption="bmp"
Type=1
link(Data,7492305:Var3,[(776,61)])
Primary=[13913221,-168,469]
}
Обратите внимание что во второй схеме нет массива в цикле перерисовки. Один регион содержит все блоки и нет необходимости проверять коллизию с массивом, а достаточно проверить коллизию игрока с миром. Если нет движущихся блоков в мире, то такой способ даже оптимальней. Или если есть движущиеся, то статические блоки объединить в один регион, а движущие в массив регионов.
UtoECat писал(а):
Вы просто храните угол в одном, а идентификатор в другом массиве? :/ Мне тоже надо так сделать...
Эти схемы наброски, а не то как надо сделать вам. Посмотрите проанализируйте и сделайте как вам будет нужно. Я не знаю вашу задумку, а лишь увидел что в вашей схеме сильно теряется производительность из за того что вы создаете регионы в цикле прорисовки.
UtoECat писал(а):
У меня по какой-то причине при повёрнутом регионе его координаты получаются некорректно...

Причина в том что вы переворачиваете квадрат по центру (см. Свойство Mode элемента RGN_Rotate) и получаете ромб и смещение координат X и Y.
карма: 11

0
Редактировалось 1 раз(а), последний 2020-02-23 13:07:19