On-line: гостей 0. Всего: 0 [подробнее..]
АвторСообщение
гранатомётчик со стажем




Пост N: 342
Рейтинг: 8
ссылка на сообщение  Отправлено: 04.08.10 13:11. Заголовок: The Race


Лог нововведений Компании
Скрытый текст

Лог нововведений неофициальной версии игры

Скрытый текст




Компания The Race
Описание
Идея пришла когда вспоминал игрушки детства и дабы Т-ЗОД не надоел медленным транспортом, решил разнообразить его альтернативной вселенной, в которой проводят гонки на обычных супер карах нашего времени. Обычный олдскул кольцевой режим как в старых добрых DOSовских гоночках \ аркадах вроде MicroMachiness и тд.

Простым катанием по кругу с противниками дело не ограничивается, разнообразие вносит движок именно Т ЗОДа

В этой версии 6 Уровней(Миссий). Они идут по порядку при прохождении но их можно загрузить и прямо через консоль используя user.Int(номер уровня компании (всего в компании 6 уровней с разными заданиями)), также можно создавать бесконечно много самому.
Создавать можно с помощью генератора (в меню кнопка Генератор)

Чтобы Перезапустить\Перейти к следующей миссии нажмите Игра в меню

Либо создать новый уровень можно через команду user.new(...куча параметров... (если ввести в консоле user.new() то выведет список параметров и в каком порядке их вводить) Все параметры в ней имеют числовые значения и только параметр Машина задается пропись в ковычках "" либо '' принимает значение
"спортмашина" (гоночная тачка)
"формула" (болид формула-1)
В добавок еще есть скрытый транспорт Грузовик, но его я использую только "по праздникам" пока и его там задать нельзя:)

Кодерам
Если кого-то из очень хорошо шарящих в скриптах заинтересовала концепция. То можете создать новых Миссий (или хотябы карт для генератора (по больше карт с турелями\оружием может быть) либо помочь в доведении до ума этой версии. Т.к. много еще не успел реализовать. Краткий ---TODO--- лист описан в скрипте TheRace.lua в функции user.Int() если хотите , можете помоч в написании.

Фотошоперам\Скиноделам и т.д.
Если чувствуете что можете нарисовать лучше\подобрать текстурки по качественней, то милости прошу.
Так же нужны текстурки домов\ и прочих объектов с видом TOP DOWN т.к. окружения на трассе маловато.

По легкости\сложности в меню есть кнопка Настройка->Сложность, можно попробовать задать. Только не забудьте перезапустить уровень

Настройки
Если в скрипте
wathtype=0
установить значение 1 то будет использоваться динамический режим отображения круга с использованием setposition
user.m("название без .ogg")
В папку music закидываем треки (по умолчанию играет трек с именем 1.ogg , если хотите другой послушать то в консоле пишите m("название без .ogg") )

старые наработки
Работает эта Компания только на моей версии T-ZOD (хотя при желании можно легко адаптировать под старые версии т.к. функций она секретных никаких не использует. Просто мне нужны были сплайны нестандартного размера - тобишь конкретно здесь >=128х128 )
И т.к. сплайн это объект не каким боком не осязаемый вообще никем, только визуально , то и снятие ограничения размера никаких проблем за собой не понесло. Так что теперь можно делать дома неограниченных размеров и т.д. (только надо их внутри обводить бетоном чтобы не проходить сквозь)
Вобщем в этой версии T-ZOD все тоже что и в предыдущей моей версии НО
-Убрано ограничение размера текстуры у объекта "Декорация"
-И как и обещал сделал функцию setposition("объект", точка_x, точка_у)
(была возможность протестировать со статичными объектами и со спрайтами)

Дистрибутив

Компания The Race + новая версия T ZOD + Компания-пример демонстрирующая setposition и прочее

Скачать<\/u><\/a> Заменить файлы в папке с игрой.

...я здесь был... Спасибо: 0 
Профиль Цитата Ответить
Ответов - 103 , стр: 1 2 3 4 5 6 All [только новые]


постоянный участник




Пост N: 2037
Рейтинг: 4
ссылка на сообщение  Отправлено: 14.11.10 21:30. Заголовок: Вопрос: КАК ЗАКРЫТЬ ..


Вопрос: КАК ЗАКРЫТЬ ЭТО ЧЁРТОВО МЕНЮ С ПОМОЩЬЮ СКРИПТА?!


<\/u><\/a>
Be quiet, be smart, be ready!
I go...
...and you will be deid!
Спасибо: 0 
Профиль Цитата Ответить
гранатомётчик со стажем




Пост N: 403
Рейтинг: 9
ссылка на сообщение  Отправлено: 15.11.10 07:05. Заголовок: Вопрос: КАК ЗАКРЫТЬ ..



 цитата:
Вопрос: КАК ЗАКРЫТЬ ЭТО ЧЁРТОВО МЕНЮ С ПОМОЩЬЮ СКРИПТА?!



 цитата:
service("menu",{title="mytitle",name="menu",names="Игра|Генератор|Настройки|О Аддоне",on_select="user.MainMenu(n)"})
имеет свойства:

title - текстура для главного экрана меню , по умолчанию gui_splash

names - Список кнопок меню (максимум 6). Отделять друг от друга символом |

on_select - аналогично on_select для messagebox'a при клике на одну из кнопок в меню, возвратится её порядковый номер от 1 до 6 в зависимости от того какая она по порядку. Следуя из примера выше, если нажать в главном меню кнопку "Генератор" , то выполнится функция user.MainMenu(2)

open - действует как переключатель. Если задать 1 , то он опять станет 0 и если открыто главное меню то он его закроет и наоборот если закрыто откроет

Внимание: небольшая формальность, переключатель open не подействует, если запускать меню вашей компании сразу после запуска её скрипта, нужно это делать с задержкой через pushcmd




 цитата:
Это я возьму на себя и тебе потом скажу.
Но и у меня есть вопрос:
- health и attaker всё ещё работают? И как?


создаешь плеера, задаешь vehname, задаешь в on_damage свой скрипт. например "user.HZ_CHE_ZA(who)" who - это object который тебя атакует. При определенных условиях бывает равен nil , так что делай проверку

...я здесь был... Спасибо: 0 
Профиль Цитата Ответить
moderator




Пост N: 3152
Рейтинг: 10
ссылка на сообщение  Отправлено: 15.11.10 10:37. Заголовок: open - действует как..



 цитата:
open - действует как переключатель. Если задать 1 , то он опять станет 0 и если открыто главное меню то он его закроет и наоборот если закрыто откроет


Не работает . Так Вирус сказал.



К счастью подковы нашёл у корыта,
Не стоит так радоваться - кто-то откинул копыта.

NNNNNNN______N_______N____N_____N__N_____N
___N_________N_N______N____N_____N_N______
___N________NNNN______NNNNN_____NN_______
___N_______N____N_____N____N_____N_N______
___N______N______N____N____N_____N__N_____N
__________________________Зона смерти


<\/u><\/a>
<\/u><\/a>
<\/u><\/a>
<\/u><\/a>


Спасибо: 0 
Профиль Цитата Ответить
гранатомётчик со стажем




Пост N: 405
Рейтинг: 9
ссылка на сообщение  Отправлено: 15.11.10 13:13. Заголовок: slava98 У меня же в ..


slava98 У меня же в компании нормально работает. Пусть копирует, так уж и быть

...я здесь был... Спасибо: 0 
Профиль Цитата Ответить
постоянный участник




Пост N: 2038
Рейтинг: 4
ссылка на сообщение  Отправлено: 15.11.10 14:40. Заголовок: Anti_Killer пишет: ..


Anti_Killer пишет:

 цитата:
Пусть копирует, так уж и быть


В этой мути (42кб текста) нифига не понятно.


<\/u><\/a>
Be quiet, be smart, be ready!
I go...
...and you will be deid!
Спасибо: 0 
Профиль Цитата Ответить
постоянный участник




Пост N: 2039
Рейтинг: 4
ссылка на сообщение  Отправлено: 15.11.10 14:46. Заголовок: Anti_Killer При запу..


Anti_Killer При запуске меню перед игрой, а после этого при запуске 1 уровня пропадает меню.


<\/u><\/a>
Be quiet, be smart, be ready!
I go...
...and you will be deid!
Спасибо: 0 
Профиль Цитата Ответить
moderator




Пост N: 3153
Рейтинг: 10
ссылка на сообщение  Отправлено: 15.11.10 15:35. Заголовок: VIRUS надо разобрать..


VIRUS надо разобраться. Мне многое понятно. Нужно просто в поиске искать.

 цитата:
loadtheme("campaign/TheRace/logo.lua")
user.menuservice = service("menu",{title="mytitle",name="menu",names="Игра|Генератор|Настройки|О Аддоне",on_select="user.MainMenu(n)", open=0})
pushcmd(function() user.MakeCount(3) end, 3)


В самом начале меню закрыто. Может это влияет?



К счастью подковы нашёл у корыта,
Не стоит так радоваться - кто-то откинул копыта.

NNNNNNN______N_______N____N_____N__N_____N
___N_________N_N______N____N_____N_N______
___N________NNNN______NNNNN_____NN_______
___N_______N____N_____N____N_____N_N______
___N______N______N____N____N_____N__N_____N
__________________________Зона смерти


<\/u><\/a>
<\/u><\/a>
<\/u><\/a>
<\/u><\/a>


Спасибо: 0 
Профиль Цитата Ответить
постоянный участник




Пост N: 2040
Рейтинг: 4
ссылка на сообщение  Отправлено: 15.11.10 17:17. Заголовок: HET!..


Ура! Проблему я решил с помощью простого скрипта.
 цитата:
if (exists("menu")==false) then message("123")


И понял что меню при выполнении beginlevel(1), удаляется меню, вот эта функция

 цитата:
--*Это функция для вызывания уровня by Sl@v@98.
function beginlevel(number)
dofile(user.campFscr.."level"..number..".lua")
savelevel=number
--savehealth=playerhealth
message("Уровень №"..number) -- Для теста. (31.10.10, Sl@v@98)
loadtheme(user.campFscr.."textures.lua")
end


Получается при запуске уровня меню уничтожалось как таковой сервис и пришлось его заново создать. Главное все работает...


<\/u><\/a>
Be quiet, be smart, be ready!
I go...
...and you will be deid!
Спасибо: 0 
Профиль Цитата Ответить



Не зарегистрирован
ссылка на сообщение  Отправлено: 15.11.10 17:58. Заголовок: VIRUS, молодец! А я ..


VIRUS, молодец! А я мучаюсь с загрузкой. Думаю, в демке она не будет нужна. Так что займусь чем-нибудь другим.(уроками )

Спасибо: 0 
Цитата Ответить
постоянный участник




Пост N: 2041
Рейтинг: 4
ссылка на сообщение  Отправлено: 15.11.10 18:31. Заголовок: Ну вот у меня так на..


Ну вот у меня так написано:
function user.NewGame() 
beginlevel(1)
user.clean()
user.menuservice = service("menu",{title="gui_splash",name="menu",names="Игра|Почта|О кампании",on_select="user.Menu(n)"})
user.Refresh()
pushcmd( function() user.menuservice.open=1 end, 0.1) -- это по сути должно закрыть меню, но ничего не происходит
--if (exists("menu")==false) then message("123")
end

Добавлено позже:
Вышло!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!


<\/u><\/a>
Be quiet, be smart, be ready!
I go...
...and you will be deid!
Спасибо: 0 
Профиль Цитата Ответить
постоянный участник




Пост N: 2044
Рейтинг: 4
ссылка на сообщение  Отправлено: 15.11.10 19:10. Заголовок: При использовании фу..


При использовании функции setposition выбивает из игры


<\/u><\/a>
Be quiet, be smart, be ready!
I go...
...and you will be deid!
Спасибо: 0 
Профиль Цитата Ответить
гранатомётчик со стажем




Пост N: 407
Рейтинг: 9
ссылка на сообщение  Отправлено: 16.11.10 02:38. Заголовок: При использовании фу..



 цитата:
При использовании функции setposition выбивает из игры

скрипт в студию. Передвигать можно только объекты - сервисы низя

...я здесь был... Спасибо: 0 
Профиль Цитата Ответить
постоянный участник




Пост N: 2046
Рейтинг: 4
ссылка на сообщение  Отправлено: 16.11.10 08:34. Заголовок: Anti_Killer Другие к..


Anti_Killer Другие кирпичи двигает а эти нет. Всеми способами. Да и когда я использую сетпозишн то объект туда телепортируется, а не едет. Да и сколько точек в клетке.


<\/u><\/a>
Be quiet, be smart, be ready!
I go...
...and you will be deid!
Спасибо: 0 
Профиль Цитата Ответить
гранатомётчик со стажем




Пост N: 410
Рейтинг: 9
ссылка на сообщение  Отправлено: 16.11.10 15:44. Заголовок: Да и когда я использ..



 цитата:
Да и когда я использую сетпозишн то объект туда телепортируется, а не едет.

вообщет так и работает команда setposition. Анимацию можно создать скриптами. Примеры есть в test.lua

 цитата:
Другие кирпичи двигает а эти нет

какая разница между ними? При каких условиях выкидывает из игры. Попробуй достичь креша игры в отдельном скрипте используя setposition в таких же условиях и найди что на это влияет. Мне так не понятно.

...я здесь был... Спасибо: 0 
Профиль Цитата Ответить
moderator




Пост N: 3156
Рейтинг: 10
ссылка на сообщение  Отправлено: 16.11.10 16:38. Заголовок: вообщет так и работа..



 цитата:
вообщет так и работает команда setposition


Я пытался ему это объяснить, но он, наверное, не понял.

 цитата:
function user.moveObjectsOneIteration(x,y,nameobj,sti,endi,tox,toy)
local iter = 0
for z = sti,endi do
-- kill(nameobj .. z) -- Нам убирать объект тепрь не нужно.
-- actor("wall_concrete",x+tox*32*iter,y+toy*32*iter,{name=nameobj .. z}) -- Функция устарела. Нужно её переделать с помощью setposition. (Sl@v@98, 10.11.10)
setposition(nameobj .. z, x+tox*32*iter,y+toy*32*iter) -- И теперь мы пробуем.
iter = iter + 1
end
end

-- Передвижение объектов по горизонтали tox - +1 если слева на право, -1 наоборот

function user.moveObjectsX(stx,sty,endx,name,sti,endi,tox,toy,speed)
local numi = (endx - stx) * 16
toy = toy or 0
speed = speed or 1
stx = ((stx - 1) * 32) + 16
sty = ((sty - 1) * 32) + 16
endx = ((endx - 1) * 32) + 16
numi = math.abs(numi) / speed
local intx = (endx-stx)/numi
for i = 1,numi do
pushcmd(function ()user.moveObjectsOneIteration(stx+intx*i,sty,name,sti,endi,tox,toy) end,i/16)
end

--аналогично по вертикали. toy - +1 если сверху вниз, -1 наоборот

function user.moveObjectsY(stx,sty,endy,name,sti,endi,toy,tox,speed)
local numi = (endy - sty) * 16
tox = tox or 0
speed = speed or 1
stx = ((stx - 1) * 32) + 16
sty = ((sty - 1) * 32) + 16
endy = ((endy - 1) * 32) + 16
numi = math.abs(numi) / speed
local inty = (endy-sty)/numi
for i = 1,numi do
pushcmd(function ()user.moveObjectsOneIteration(stx,sty+inty*i,name,sti,endi,tox,toy) end,i/16)
end


Я тут просто отредактировал скрипт Морза под setposition.

 цитата:
pushcmd( function() setposition("br1", 31, 17)
setposition("br2", 31, 18) end, 2)
pushcmd( function()setposition("br1", 31, 14)
setposition("br2", 31, 21) end, 2)


Применяю скрипт. Кубики диагональные. Они едут на следующии клетки, а потом игра вылетает. Как всегда, лог ошибок пуст .



К счастью подковы нашёл у корыта,
Не стоит так радоваться - кто-то откинул копыта.

NNNNNNN______N_______N____N_____N__N_____N
___N_________N_N______N____N_____N_N______
___N________NNNN______NNNNN_____NN_______
___N_______N____N_____N____N_____N_N______
___N______N______N____N____N_____N__N_____N
__________________________Зона смерти


<\/u><\/a>
<\/u><\/a>
<\/u><\/a>
<\/u><\/a>


Спасибо: 0 
Профиль Цитата Ответить
постоянный участник




Пост N: 2048
Рейтинг: 4
ссылка на сообщение  Отправлено: 16.11.10 22:44. Заголовок: VIRUS пишет: У меня..


VIRUS пишет:

 цитата:
У меня несколько вопросов:
• Чем локальные переменные отличаются от глобальных?


Мне кто-то ответит?


<\/u><\/a>
Be quiet, be smart, be ready!
I go...
...and you will be deid!
Спасибо: 0 
Профиль Цитата Ответить
гранатомётчик со стажем




Пост N: 412
Рейтинг: 9
ссылка на сообщение  Отправлено: 17.11.10 01:20. Заголовок: Мне кто-то ответит? ..



 цитата:
Мне кто-то ответит?

К глобальным функция и переменным можно обратиться с любого скрипта, локальные переменные же действуют только в пределах одной функции\скрипта. Для скриптов нужно использовать именно локальные переменные\функции чтобы корректно работали сейвы и игра в них не лезла

...я здесь был... Спасибо: 0 
Профиль Цитата Ответить
постоянный участник




Пост N: 2125
Рейтинг: 4
ссылка на сообщение  Отправлено: 28.02.11 17:51. Заголовок: Помогите найти ошибк..


Помогите найти ошибку в данном скрипте который должен выполнять функцию attacker которой нет на данный момент.

local damagesourvarriors = 0 
local nameofattacker = 0
...
...
service ("ai", {name="ourwarrior1", vehname="e1", nick="Поселенец", class="ekivator1", skin="ekivatorl", team=3, on_die="user.M1OnDieBot1()", on_damage="nameofatacker = who.name; user.DamageOurvarrior()", active=0})
...
service ("ai", {name="ourwarrior2", vehname="e2", nick="Поселенец", class="ekivator1", skin="ekivatorl", team=3, on_die="user.M1OnDieBot2()", on_damage="nameofatacker = who.name; user.DamageOurvarrior()", active=1})
...
...
function user.DamageOurvarrior()
if nameofatacker == ourplayer then
damagesourvarriors = damagesourvarriors + 1
if damagesourvarriors == 1 then
message("Поселенец: Эй! Не стреляй по своим!!")
elseif damagesourvarriors == 2 then
message("Поселенец: Ты что не понял?! Не стреляй по поселенцем!!!")
esleif damagesourvarriors == 3 then
message("Поселенец: Последнее предупреждение! Хватит стрелять по своим!!!")
elseif damagesourvarriors == 4 then
message("Командир поселенцев: Он предатель, бей его!")
pset("ourplayer", "team", 2)
pset("ourvarrior3", "active", 1)
user.EnemyAttack
end
еnd
end


В консоле странная ошибка которою я не могу исправить да и тут наверняка еще их полно. Заранее спасибо.




Be quiet, be smart, be ready!
I go...
...and you will be deid!
Спасибо: 0 
Профиль Цитата Ответить
moderator




Пост N: 3365
Рейтинг: 11
ссылка на сообщение  Отправлено: 28.02.11 21:35. Заголовок: По-моему, всё в поря..


По-моему, всё в порядке, только пиши в "Вопросы по скриптам".



К счастью подковы нашёл у корыта,
Не стоит так радоваться - кто-то откинул копыта.

NNNNNNN______N_______N____N_____N__N_____N
___N_________N_N______N____N_____N_N______
___N________NNNN______NNNNN_____NN_______
___N_______N____N_____N____N_____N_N______
___N______N______N____N____N_____N__N_____N
__________________________Зона смерти








Спасибо: 0 
Профиль Цитата Ответить
moderator




Пост N: 3366
Рейтинг: 11
ссылка на сообщение  Отправлено: 28.02.11 22:31. Заголовок: Попробуй не name, а ..


Попробуй не name, а vehname. Ну в общем методом тыка. Может заработает.



К счастью подковы нашёл у корыта,
Не стоит так радоваться - кто-то откинул копыта.

NNNNNNN______N_______N____N_____N__N_____N
___N_________N_N______N____N_____N_N______
___N________NNNN______NNNNN_____NN_______
___N_______N____N_____N____N_____N_N______
___N______N______N____N____N_____N__N_____N
__________________________Зона смерти








Спасибо: 0 
Профиль Цитата Ответить
Ответов - 103 , стр: 1 2 3 4 5 6 All [только новые]
Ответ:
1 2 3 4 5 6 7 8 9
большой шрифт малый шрифт надстрочный подстрочный заголовок большой заголовок видео с youtube.com картинка из интернета картинка с компьютера ссылка файл с компьютера русская клавиатура транслитератор  цитата  кавычки моноширинный шрифт моноширинный шрифт горизонтальная линия отступ точка LI бегущая строка оффтопик свернутый текст

показывать это сообщение только модераторам
не делать ссылки активными
Имя, пароль:      зарегистрироваться    
Тему читают:
- участник сейчас на форуме
- участник вне форума
Все даты в формате GMT  3 час. Хитов сегодня: 1
Права: смайлы да, картинки да, шрифты да, голосования нет
аватары да, автозамена ссылок вкл, премодерация откл, правка нет