This is a documentation for Board Game Arena: play board games online !
Туториал гомоку
Тхис туториал wилл гуиде yоу тхроугх тхе басицс оф цреатинг а симпле гаме он БГА Студио, тхроугх тхе еxампле оф Гомоку (алсо кноwн ас Гобанг ор Фиве ин а Роw).
Yоу wилл старт фром оур 'емтпy гаме' темплате
Хере ис хоw yоур гамес лоокс бy дефаулт wхен ит хас јуст беен цреатед :
Сетуп тхе боард
Гатхер усефул имагес фор тхе гаме анд едит тхем ас неедед. Уплоад тхем ин тхе 'имг' фолдер оф yоур СФТП аццесс.
Едит .тпл то адд соме див фор тхе боард ин тхе ХТМЛ.
Едит .цсс то схоw тхе имаге оф тхе боард ас бацкгроунд.
Сетуп тхе бацкбоне оф yоур гаме
Едит .сqл то цреате а табле фор интерсецтионс.
Едит .гаме.пхп->сетупНеwГаме то инсерт тхе емптy интерсецтионс (19x19) wитх цоординатес инто тхе датабасе.
Едит .гаме.пхп->гетАллДатас то ретриеве тхе стате оф тхе интерсецтионс фром тхе датабасе.
Едит .тпл то цреате а темплате фор интерсецтионс (јстпл_интерсецтион).
Едит .јс то сетуп тхе интерсецтионс лаyер тхат wилл бе усед то гет цлицк евентс анд то дисплаy тхе стонес. Усе соме темпорарy цсс цолорс он бордерс ор бацкгроунд+опацитy то маке суре тхеy аре поситионед ригхт. Yоу цан децларе соме цонстантс ин материал.инц.пхп анд пасс тхем то yоур .јс тхроугх .гаме.пхп->гетАллДатас фор еасy репоситионинг.
Манаге статес анд евентс
Дефине yоур гаме статес ин статес.инц.пхп
Адд онцлицк евентс он интерсецтионс ин .јс, цаллинг ан ацтион wитх аппроприате параметерс
Адд ацтион ин .ацтион.пхп, ретриевинг параметерс анд цаллинг тхе аппроприате гаме ацтион
Адд гаме ацтион ин .гаме.пхп то упдате тхе датабасе, тхен нотифy тхе цлиент усинг а метход ‘стонеПлаyед’
Имплемент тхис метход ин јавасцрипт то упдате тхе интерсецтион то схоw тхе стоне, анд регистер ит инсиде тхе сетНотифицатионс фунцтион.
Тхе басиц гаме турн ис имплементед: yоу цан дроп соме стонес!
Цлеануп
Ремове темпорарy цсс висуалисатион хелперс : лоокс гоод!
Имплемент рулес анд енд оф гаме цондитион(с)
Имплемент специфиц рулес фор тхе гаме (иф анy)
Nothing special for Gomoku
Имплемент руле фор цомпутинг гаме прогрессион ин .гаме.пхп->гетГамеПрогрессион()
Имплемент енд оф гаме детецтион анд упдате тхе сцоре аццординг то wхо ис тхе wиннер ин .гаме.пхп->стЦхецкЕндОфГаме()
Нотифy тхе сцоре анд имплемент тхе цорреспондинг интерфаце упдате ин .јс
Тест еверyтхинг тхороугхлy... yоу аре доне!