Skip to content

Instantly share code, notes, and snippets.

' Gambas class file
Public Speed As Integer ' скорость
Public Parts As New PartUnitClass[] ' конечности лапы
'1-8 лапы 9 голова 10 хвост
Public TypeUnit As String ' наименование юнита
Public OtherValues As New GroupUniversalValues ' дополнительные признаки юнита
' Gambas class file
' FileDialogForm
' Форма запрашивает имя файла у пользователя давая выбор из определённого каталога
' '
Public Sub Form_Open()
End
Public Function FindRangeID(MinID As Integer, MaxID As Integer) As Integer
' Функция ищет ID в заданном диапазоне. И возвращает индекс первого найденого значения
Dim a As Integer ' счётчик цикла
Dim e As Boolean ' флаг досрочного выхода
Dim x As Integer ' возвращаемое значение
Dim m As Integer
m = IDValue.Max
x = -1 ' свойство не найдено
If Count > 0 Then
For a = 0 To m
Изложу свою мысль. Деньги возникли как тот товар посредник при обмене, они сделали обмен удобным. Но они всё таки являлись информационным средством которое позволило выражать соотношение цены ресурсов, товаров и знаний. Удобная прослойка и абстракция. Товар же который покупали за деньги объединил в себе ресурсы, энергию и услуги. Инкапсулировав их в одну сущность и оценив её деньгами. Но согласитесь, это ведь не оптимально, возможны явные перекосы в итоговых соотношениях из за непрозрачности. К тому же из за этой инкапсуляции цены ресурсов и услуг (труда) начинают коррелировать и иметь друг для друга буферный эффект, прям как два параллельных электрических кабеля. И я думаю сложности регулирования экономики проистекают именно из за такой связи возникающей в товаре. Но сейчас нужное информационное обеспечение может быть выполнено без помощи денег, в их старом понимании когда они были привязаны к золоту. Сегодняшние деньги обеспечены главным образом нашей готовностью за них трудиться, то есть по сути они даже н
Public Function SymmetryMorfidTrue(UnitMorfid As UnitClass) As Boolean
' Функция возвращает True если Морфид собран в 2D редакторе симетрично.
' Она обращает внимание лишь на godc классы редактора ID которого записан в констате Editor2dPartUnitMorfid
' Для реального игрового контроля будет использоваться другой механизм, в котором клиентом на сервер будет передаваться
' список файлов из которых в дальнейшем и будет сформирован юнит. А так же список генетических программ которые
' будут задействованы в юните
' Генетическая программа это тригер и действие. Тригером может служить фермент или достижение нужной массы определённой частью.
' А действие как выработка другого фермента, так и команда на рост, апоптоз или морфирование определённой части в другую.
' По сути это будут простейшие линейные скриптыиспользующие в качестве условий ферментные флаги.
' Так же некоторые юниты смогут распылять произвольные ферменты при помощи желез запуская те или иные последовательности
Public Function SymmetryMorfidTrue(UnitMorfid As UnitClass) As Integer
' Функция возвращает True если Морфид собран в 2D редакторе симетрично.
' Возвращает значение отличное от True если какая то часть не валидна, в битовой маске этого числа
' обозначены неисправные конечности.
'
' Она обращает внимание лишь на godc классы редактора ID которого записан в констате Editor2dPartUnitMorfid
' Для реального игрового контроля будет использоваться другой механизм, в котором клиентом на сервер будет передаваться
' список файлов из которых в дальнейшем и будет сформирован юнит. А так же список генетических программ которые
' будут задействованы в юните
' Генетическая программа это тригер и действие. Тригером может служить фермент или достижение нужной массы определённой частью.
#!/bin/sh
cd StarE/
find -type f -not \( -name *.form~ -or -name *.class~ -or -name *.module~ -or -name *.png~ -or -name *.pot~ -or -name *.jpg~ \) -print | xargs -n 1 -I % cp -Rfv --parents "%" ../star-e
#!/bin/sh
cd Каталог_проекта/
find -type f -not \( -name *.form~ -or -name *.class~ -or -name *.module~ -or -name *.png~ -or -name *.pot~ -or -name *.jpg~ \) -print | xargs -n 1 -I % cp -Rfv --parents "%" ../Каталог_git_репозитория
Public Function SymmetryMorfidTrue(UnitMorfid As UnitClass) As Integer
' Функция возвращает True если Морфид собран в 2D редакторе симетрично.
' Возвращает значение отличное от True если какая то часть не валидна, в битовой маске этого числа
' обозначены неисправные конечности.
' Поэтому проверку на неправильность конечностей надо делать if r <> True , а не if r = false
' О как!
' Она обращает внимание лишь на godc классы редактора ID которого записан в констате Editor2dPartUnitMorfid
' Для реального игрового контроля будет использоваться другой механизм, в котором клиентом на сервер будет передаваться
' список файлов из которых в дальнейшем и будет сформирован юнит. А так же список генетических программ которые
Public Function GetSymmetryDuplication(Part As PartUnitClass) As Boolean[]
'Функция возвращает в виде битовой маски симметрию дублирования части
'Данная функция универсальна и работает со всем созданными в 2D редакторе (первом) проектами частей юнитов
Dim r As New Boolean[32] ' результат в массиве размером 32 бита,
' больше смысла нет, так как переменная определяющая симметрию занимает 32 бита (на 32 разрядных системах)
' Нулевой бит отвечает за саму же конечность и игнорируеться.
' Анализ результатов следует проводить с элемента 1.
' На всякий случай в качестве ограничителя счётчика используйте переменную со значением r.Max
' Использование же числа 31 = (32 - 1) может привести к несовместимости если процедура симметрии будет изменена на более сложную