Вверх ↑
Этот топик читают: Гость
Ответов: 18
Рейтинг: 20
#1: 2020-03-14 15:30:35 ЛС | профиль | цитата
Простая игра, цель которой закрасить все квадраты в один цвет.
Схема


Add(MainForm,2953706,119,112)
{
Width=461
Height=510
Caption="В один цвет за ходы"
BorderStyle=1
Icon=[ZIP7E03000078DA63606004420101062029C190C1CCC020C6C0C0A001C440210605068838083830330C149874078190404303020D6AF5431C34202154F01F090D5EF5B403FF81F6343662C7203942F200B4725451]
Position=1
link(onCreate,2671369:doEvent1,[])
}
Add(PaintBox,12793008,700,147)
{
Left=10
Top=35
Width=440
Height=440
Point(MouseX)
Point(MouseY)
Point(onMouseDown)
link(onMouseDown,15215645:In,[])
}
Add(Img_Rectangle,8715256,637,147)
{
Point2=2621480
Point2AsOffset=0
Style=1
BgColor=0
Point(Point1)
Point(BgColor)
link(onDraw,7153133:doWork2,[])
link(Bitmap,4785343:getVar,[(643,131)(615,131)])
link(Point1,4532741:Point,[])
link(BgColor,5555738:Value,[(664,131)(706,131)])
}
Add(For,14809704,252,140)
{
End=5
link(onEvent,3470752:doOperation,[])
link(onStop,1624975:начало,[(291,153)(291,237)])
link(End,3530530:Var2,[])
}
Add(PointXY,4532741,651,84)
{
link(X,3470752:Result,[(657,75)(398,75)(398,180)(307,180)])
link(Y,15681026:Result,[(664,68)(573,68)(573,180)(412,180)])
}
Add(For,7943352,350,140)
{
End=5
link(onEvent,15681026:doOperation,[])
link(End,3530530:Var3,[(363,117)])
}
Add(LineBreakEx,2586683,700,217)
{
Caption="col"
Type=3
link(_Data,12793008:Bitmap,[])
}
Add(LineBreakEx,4785343,609,91)
{
Caption="col"
Type=2
}
Add(LineBreakEx,10665607,707,203)
{
Caption="x"
Type=3
link(_Data,12793008:MouseX,[])
}
Add(LineBreakEx,1487647,714,189)
{
Caption="y"
Type=3
link(_Data,12793008:MouseY,[])
}
Add(HubEx,7153133,679,147)
{
link(onEvent,12793008:doRefresh,[])
}
Add(Math,3470752,301,140)
{
OpType=2
Op2=40
link(onResult,7943352:doFor,[])
}
Add(Math,15681026,406,140)
{
OpType=2
Op2=40
link(onResult,15661951:doRandom,[])
}
Add(Memory,6331324,259,70)
{
Default=Integer(10)
}
Add(GetDataEx,3530530,259,112)
{
link(Data,6331324:Value,[])
}
Add(LineBreak,3307093,56,329)
{
Caption="ход"
link(Out,15164995:doEvent,[])
Primary=[15215645,700,-175]
}
Add(Hub,2671369,203,126)
{
InCount=4
OutCount=4
link(onEvent1,15661951:doRandomize,[(445,132)(445,153)])
link(onEvent2,12793008:doClear,[(239,139)(239,188)(599,188)(599,160)])
link(onEvent3,14809704:doFor,[])
}
Add(MultiElementEx,3102215,476,336)
{
link(onTrue,11554619:doFor,[])
link(,1624975:doEvent1,[(515,349)(515,272)(326,272)(326,258)])
link(onResult,14341963:doEvent1,[(522,356)(522,391)])
link(Data,10325535:getVar,[])
}
BEGIN_SDK
Add(EditMultiEx,8714516,28,28)
{
WorkCount=#7:doValue|
EventCount=#6:onTrue|0:|8:onResult|
DataCount=#4:Data|
Width=776
Height=172
HOffset=140
link(doValue,11859723:doValue,[(57,34)(57,90)])
}
Add(LineBreakEx,5770125,168,49)
{
Type=3
link(_Data,8714516:Data,[])
}
Add(LineBreakEx,13167067,189,49)
{
Type=2
}
Add(Memory,11859723,70,84)
{
link(onData,155367:doTimer,[])
}
Add(Img_FloodFill,6901516,189,84)
{
X=10
Y=10
FillType=0
Point(ColorBorder)
link(onDraw,7231906:doEvent1,[])
link(Bitmap,13167067:getVar,[])
link(Color,11859723:Value,[(202,75)(163,75)(163,125)(76,125)])
}
Add(Timer,155367,126,84)
{
Interval=33
Enable=1
AutoStop=1
link(onTimer,6901516:doDraw,[])
}
Add(Img_GetPoint,15273319,630,98)
{
link(onGetPixel,2108113:doData,[])
link(Bitmap,6429865:getVar,[])
link(X,2866472:Result,[(643,89)(616,89)(616,137)(433,137)])
link(Y,10227590:Result,[(650,89)(671,89)(671,145)(580,145)])
}
Add(For,1684827,315,98)
{
End=5
link(onEvent,8627099:doOperation,[])
link(onStop,1163149:doCompare,[(361,111)(361,153)])
link(End,8610221:Var2,[])
}
Add(For,16678939,476,98)
{
End=5
link(onEvent,1591794:doOperation,[])
link(End,8610221:Var3,[(489,82)])
}
Add(Math,8627099,371,98)
{
OpType=2
Op2=40
link(onResult,2866472:doOperation,[])
}
Add(Math,1591794,525,98)
{
OpType=2
Op2=40
link(onResult,10227590:doOperation,[])
}
Add(Memory,12820937,322,35)
{
Default=Integer(10)
}
Add(GetDataEx,8610221,322,77)
{
link(Data,12820937:Value,[])
}
Add(LineBreakEx,6429865,630,56)
{
Type=2
}
Add(Math,2866472,427,98)
{
Op2=5
link(onResult,16678939:doFor,[])
}
Add(Math,10227590,574,98)
{
Op2=5
link(onResult,15273319:doGetPixel,[])
}
Add(ChangeMon,2108113,686,98)
{
link(onData,11075725:doNext,[])
}
Add(CounterEx,11075725,742,98)
{
Max=999
Point(doReset)
}
Add(If_else,1163149,742,147)
{
Type=3
Op2=Integer(1)
link(onTrue,8714516:onResult,[(781,153)(781,48)])
link(onFalse,8714516:,[(788,160)(788,41)])
link(Op1,11075725:Count,[])
}
Add(Hub,7231906,245,84)
{
OutCount=3
link(onEvent1,8714516:onTrue,[(270,90)(270,34)])
link(onEvent2,11075725:doReset,[(277,97)(277,76)(725,76)(725,111)])
link(onEvent3,1684827:doFor,[])
}
END_SDK
Add(LineBreakEx,10325535,476,308)
{
Caption="col"
Type=2
}
Add(Memory,5555738,700,84)
{
}
Add(Message,3416780,581,392)
{
Message="Вы победили. И теперь будет на 1 ход меньше."
Caption="Поздравляем"
}
Add(Hub,14341963,532,385)
{
OutCount=3
link(onEvent1,1624975:победа,[(557,391)(557,377)(340,377)(340,244)])
link(onEvent2,3416780:doMessage,[])
link(onEvent3,8352493:In,[(571,405)(571,440)])
}
Add(StrList,11203893,511,84)
{
Strings=#3:207|5:36608|8:16711680|5:51915|8:13421259|5:31741|8:16711933|0:|0:|0:|0:|0:|0:|
}
Add(ArrayRW,16356881,525,140)
{
link(onRead,1710456:doEvent1,[])
link(Array,11203893:Array,[])
}
Add(Hub,1710456,581,140)
{
link(onEvent1,5555738:doValue,[(627,146)(627,125)(690,125)(690,90)])
link(onEvent2,8715256:doDraw,[])
}
Add(Random,15661951,469,140)
{
Max=6
link(onRandom,16356881:doRead,[])
}
Add(IndexToChanel,15164995,112,329)
{
link(onEvent1,10374689:doGetPixel,[])
}
Add(Img_GetPoint,1785587,420,336)
{
link(onGetPixel,3102215:doValue,[])
link(Bitmap,5368378:getVar,[])
link(X,16538744:getVar,[])
link(Y,8234795:getVar,[])
}
Add(LineBreakEx,5368378,420,280)
{
Caption="col"
Type=2
}
Add(LineBreakEx,16538744,427,294)
{
Caption="x"
Type=2
}
Add(LineBreakEx,8234795,434,308)
{
Caption="y"
Type=2
}
Add(Label,11951715,420,231)
{
Left=10
Top=10
Caption="20 ходов"
}
Add(Hub,3618863,308,329)
{
link(onEvent1,1624975:ход,[(333,335)(333,251)])
link(onEvent2,3745860:doFor,[])
}
Add(MultiElementEx,1624975,350,231)
{
link(счёт,11951715:doText,[])
link(onEvent3,2671369:doEvent4,[(389,244)(389,223)(193,223)(193,153)])
}
BEGIN_SDK
Add(EditMultiEx,10894800,21,21)
{
WorkCount=#6:начало|6:победа|3:ход|8:doEvent1|
EventCount=#4:счёт|8:onEvent3|
VarCount=#6:Result|
Width=433
Height=347
VOffset=140
link(начало,3109897:doEvent1,[])
link(победа,14109141:doOperation,[(32,174)(32,286)])
link(ход,288138:doNext,[(81,181)(81,160)])
link(doEvent1,15165871:doCompare,[(39,188)(39,251)])
}
Add(CounterEx,288138,161,154)
{
Max=26
Direct=1
Default=26
Point(doReset)
Point(doMax)
Point(Max)
Point(onThroughMin)
link(onNext,1631163:doWork2,[])
}
Add(ConvertorEx,5194061,231,154)
{
Mode=14
Word_1=" ход осталься "
Word_2=" хода осталось"
Word_5=" ходов осталось"
link(onResult,10894800:счёт,[(445,160)(445,167)])
}
Add(DoData,1165629,161,224)
{
link(onEventData,1631163:doWork3,[(207,230)])
link(Data,7942410:Var2,[])
}
Add(Hub,3109897,105,161)
{
link(onEvent1,288138:doReset,[])
link(onEvent2,1165629:doData,[(130,174)(130,230)])
}
Add(Math,14109141,210,280)
{
OpType=1
Op2=1
link(onResult,1783558:doWork2,[])
link(Op1,288138:Max,[(216,207)(174,207)])
}
Add(HubEx,1631163,203,154)
{
link(onEvent,5194061:doConvert,[])
}
Add(Message,14144024,364,189)
{
Message="Ходы закончились и Вы проиграли."
Caption="усп"
}
Add(If_else,15165871,266,245)
{
Op2=Integer(0)
link(onTrue,15640124:doEvent1,[])
link(Op1,7942410:Var3,[(272,215)])
}
Add(DoData,5727107,357,252)
{
Data=Integer(26)
link(onEventData,1783558:doWork1,[(423,258)(423,286)])
}
Add(Hub,15640124,322,245)
{
OutCount=3
link(onEvent1,14144024:doMessage,[(347,251)(347,195)])
link(onEvent2,5727107:doData,[])
link(onEvent3,10894800:onEvent3,[(403,265)(403,174)])
}
Add(GetDataEx,7942410,161,210)
{
link(Data,288138:Count,[])
}
Add(HubEx,1783558,245,280)
{
Angle=3
link(onEvent,288138:doMax,[(249,272)(151,272)(151,174)])
}
END_SDK
Add(LineBreak,1833539,105,154)
{
Caption="старт"
link(Out,2671369:doEvent3,[(165,160)(165,146)])
Primary=[8352493,476,280]
}
Add(Button,961134,35,21)
{
Left=385
Top=5
Width=65
Caption="Справка"
link(onClick,8180057:doMessage,[])
}
Add(Message,8180057,91,21)
{
Message="Цель игры:\r\nЗакрасить поле одним цветом начиная от верхнего\r\nлевого угла за определённое количество ходов (26шт).\r\nПосле каждой победы колличество ходов уменьшается на 1\r\n\r\nУспехов.\r\n\r\nAles (c) 2019"
Caption="Справка"
}
Add(MultiElementEx,3745860,364,336)
{
link(onStop,1785587:doGetPixel,[])
link(Bitmap,3679459:getVar,[])
}
BEGIN_SDK
Add(EditMultiEx,9199277,21,21)
{
WorkCount=#5:doFor|
EventCount=#6:onStop|
DataCount=#6:Bitmap|
Width=475
Height=193
link(doFor,11211042:doFor,[(32,27)(32,132)])
}
Add(For,11211042,70,126)
{
Start=20
End=420
Step=40
link(onEvent,246556:doOperation,[])
link(onStop,9199277:onStop,[(109,139)(109,27)])
}
Add(Img_Rectangle,14816446,413,126)
{
Point2=2621480
Point2AsOffset=0
Style=1
BgColor=0
Point(Point1)
Point(BgColor)
link(Bitmap,1302861:Var1,[(419,40)(307,40)])
link(Color,53072:Var2,[])
link(Point1,6196129:Point,[])
link(BgColor,53072:Var3,[(440,105)])
}
Add(PointXY,6196129,427,63)
{
link(X,246556:Result,[(433,54)(181,54)(181,173)(132,173)])
link(Y,12536167:Result,[(440,47)(349,47)(349,180)(251,180)])
}
Add(Img_GetPoint,7939636,301,126)
{
link(onGetPixel,5092600:doValue,[])
link(Bitmap,1302861:Var2,[])
link(X,11211042:Position,[(314,117)(293,117)(293,166)(76,166)])
link(Y,11412420:Position,[(321,117)(328,117)(328,173)(195,173)])
}
Add(For,11412420,189,126)
{
Start=20
End=420
Step=40
link(onEvent,12536167:doOperation,[])
}
Add(Math,246556,126,126)
{
OpType=1
Op2=20
link(onResult,11412420:doFor,[])
}
Add(Math,12536167,245,126)
{
OpType=1
Op2=20
link(onResult,7939636:doGetPixel,[])
}
Add(Memory,5092600,357,126)
{
link(onData,14816446:doDraw,[])
}
Add(GetDataEx,53072,420,100)
{
Angle=3
link(Data,5092600:Value,[(402,105)(402,166)(363,166)])
}
Add(GetDataEx,1302861,301,42)
{
Angle=3
link(Data,9199277:Bitmap,[(27,47)])
}
END_SDK
Add(MultiElementEx,11554619,532,336)
{
link(onStop,7153133:doWork3,[(683,342)])
link(Bitmap,4482735:getVar,[])
}
BEGIN_SDK
Add(EditMultiEx,2246551,21,21)
{
WorkCount=#5:doFor|
EventCount=#6:onStop|
DataCount=#6:Bitmap|
Width=510
Height=186
link(doFor,3991213:doFor,[(32,27)(32,132)])
}
Add(For,3991213,84,126)
{
Start=20
End=420
Step=40
link(onEvent,6700964:doOperation,[])
link(onStop,2246551:onStop,[(123,139)(123,27)])
}
Add(Img_Rectangle,4128125,427,126)
{
Point2=2621480
Point2AsOffset=0
Style=1
BgColor=0
Point(Point1)
Point(BgColor)
link(Bitmap,8521943:Var1,[(433,40)(321,40)])
link(Point1,7989380:Point,[])
link(BgColor,4524623:Value,[(454,117)(468,117)(468,166)(377,166)])
}
Add(PointXY,7989380,441,63)
{
link(X,6700964:Result,[(447,54)(195,54)(195,173)(146,173)])
link(Y,7133876:Result,[(454,47)(363,47)(363,180)(265,180)])
}
Add(Img_GetPoint,9481324,315,126)
{
link(onGetPixel,4524623:doValue,[])
link(Bitmap,8521943:Var2,[])
link(X,3991213:Position,[(328,117)(307,117)(307,166)(90,166)])
link(Y,15232964:Position,[(335,117)(355,117)(355,171)(209,171)])
}
Add(For,15232964,203,126)
{
Start=20
End=420
Step=40
link(onEvent,7133876:doOperation,[])
}
Add(Math,6700964,140,126)
{
OpType=1
Op2=20
link(onResult,15232964:doFor,[])
}
Add(Math,7133876,259,126)
{
OpType=1
Op2=20
link(onResult,9481324:doGetPixel,[])
}
Add(Memory,4524623,371,126)
{
link(onData,4128125:doDraw,[])
}
Add(GetDataEx,8521943,315,42)
{
Angle=3
link(Data,2246551:Bitmap,[(27,47)])
}
END_SDK
Add(LineBreakEx,3679459,364,308)
{
Caption="col"
Type=2
}
Add(LineBreakEx,4482735,532,308)
{
Caption="col"
Type=2
}
Add(Img_GetPoint,10374689,161,329)
{
X=20
Y=20
link(onGetPixel,840631:doGetPixel,[])
link(Bitmap,11709964:getVar,[])
}
Add(LineBreakEx,11709964,161,301)
{
Caption="col"
Type=2
}
Add(Img_GetPoint,840631,210,329)
{
link(onGetPixel,796679:doCompare,[])
link(Bitmap,5717615:getVar,[])
link(X,8211453:getVar,[])
link(Y,3094406:getVar,[])
}
Add(LineBreakEx,5717615,210,273)
{
Caption="col"
Type=2
}
Add(LineBreakEx,8211453,217,287)
{
Caption="x"
Type=2
}
Add(LineBreakEx,3094406,224,301)
{
Caption="y"
Type=2
}
Add(If_else,796679,259,329)
{
Type=5
link(onTrue,3618863:doEvent1,[])
link(Op1,10374689:Color,[(265,320)(251,320)(251,369)(167,369)])
}

В игре есть небольшая справка, что и как.
карма: 1

7
Голосовали:sla8a, Galkov, Tad, Joiner, fox-video, kamakama, Konst
vip
#1.1контекстная реклама от партнеров
Ответов: 2197
Рейтинг: 673
#2: 2020-03-14 15:46:55 ЛС | профиль | цитата
Flapiotun, молодец! За оформление схемы жму руку!
Первый уровень прошел

карма: 11

0
Ответов: 9906
Рейтинг: 351
#3: 2020-03-14 15:53:19 ЛС | профиль | цитата
sla8a писал(а):
За оформление схемы жму руку!

Согласен.
У человека 3 поста, а сделано - в пример большинству на форуме
карма: 9

0
Ответов: 167
Рейтинг: 7
#4: 2020-03-14 23:38:01 ЛС | профиль | цитата
[flood] миссия невыполнима
00000000001.jpg
[/flood] Игра очень хорошая Идея и реализация довольно оригинальна... Простенько и со вкусом
карма: 0
c, c++, lua
0
Ответов: 52
Рейтинг: 0
#5: 2020-03-14 23:50:15 ЛС | профиль | цитата
тут это.. хоть доп компоненты выложи) у меня версия 186 билд.


Потому, у меня любой клик крооме первого закрашиваются в один uвет)
карма: 0

0
Ответов: 263
Рейтинг: 18
#6: 2020-03-15 06:53:55 ЛС | профиль | цитата
atutunnik94, обычный счетчик там стоит

карма: 3

0
Ответов: 16884
Рейтинг: 1239
#7: 2020-03-15 12:12:20 ЛС | профиль | цитата
atutunnik94 писал(а):
хоть доп компоненты выложи
Обновись с SVN.
карма: 25
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
0
7
Сообщение
...
Прикрепленные файлы
(файлы не залиты)