Показать сообщение отдельно
Старый 31.10.2012, 19:07   #68
radiobutton
Бывалый
 
Регистрация: 16.09.2011
Сообщений: 863
Написано 257 полезных сообщений
(для 546 пользователей)
Ответ: Альтернатива скриптовику.

Сообщение от IgorOK Посмотреть сообщение
Игра - это чаще всего совокупность нескольких классов объектов которые по-разному друг с другом взаимодействуют. При пряморукой реализации настройки параметров этих взаимодействий, можно вообще не использовать всю эту уличную магию с dll'ками и интерпретаторами, а вообще ограничиться конфигами в блокноте.

Представь себе ситуацию: твой дизайнер хочет сделать так, чтобы финальный босс стрелял лучом из глаз, а не кидал огненный шар. Ты будешь ему говорить чтобы он залез в скрипт, отредактировал что-то там, скомпилировал dll и вставил в папку? Не проще ли ему сказать, что в файле босс.txt нужно поправить одну строчку? К примеру:

final_boss_gun=fireball

на

final_boss_gun=eye_beam
То что ты описал, это не скриптовик.

Мы же обсуждали скриптовики. И я сказал что можно использовать рефлексию. Тут не поналезли троли, говорящие, что рефлексия это не то, что я думаю. Когда оказалось, что рефлексию можно приспособить для написания скриптов, начали придераться к другим мелочам, которые вообще из другой темы.

на счет твоего примера.
Тогда тебе не подойдут и всякие скриптовики инетерпритаторы. Ибо там тот же код, просто на другом языке, не c#. Хотя мб и c#. xD
Ибо все равно придется писать свою систему, которая final_boss_gun=fireball таким образом позволяет менять уровень. Ибо так можно делать, только если у тебя реализован и огненный шар и лазерный луч в коде. А если они у тебя реализованы, то и с помощью рефлексии они меняются заменой 1 строчки.

Boss FINAL_boss = new boss(bla bla bla, Ognenniy_war, bla bla bla).
на
Boss FINAL_boss = new boss(bla bla bla, Lu4_iz_glaz, bla bla bla).

На счет компиляции итд, опять же можно сделать небольшую утилиту(с виду будит как блокнот), которая будит делать и компиляция и сохранение с помощью нажатия одной клавишы(или ctrl+s).

Ты скажешь своему дизайнеру - открой boss.dll и поменяй то, что я описал выше.
(Offline)
 
Ответить с цитированием