Извините, ничего не найдено.

Не расстраивайся! Лучше выпей чайку!
Регистрация
Справка
Календарь

Вернуться   www.boolean.name > Проекты > Постмор

Постмор Истории успешного завершения проекта. Разрабы рассказывают, как к успеху шли.

Ответ
 
Опции темы
Старый 25.03.2020, 08:58   #76
ant0N
Бывалый
 
Аватар для ant0N
 
Регистрация: 10.06.2011
Адрес: В горах
Сообщений: 781
Написано 293 полезных сообщений
(для 762 пользователей)
Ответ: I.D.S. MONSTERS

//расчёт размера сетки исходя из уровня угрозы
        if (TotalThreatLevel == 1)
        {
            SetkaScaleZ = 11;
            SetkaScaleX = 11;
        }
        if (TotalThreatLevel == 2)
        {
            SetkaScaleZ = 13;
            SetkaScaleX = 13;
        }
        if (TotalThreatLevel == 3)
        {
            SetkaScaleZ = 15;
            SetkaScaleX = 15;
        }
        if (TotalThreatLevel == 4)
        {
            SetkaScaleZ = 19;
            SetkaScaleX = 19;
        }
        if (TotalThreatLevel == 5)
        {
            SetkaScaleZ = 23;
            SetkaScaleX = 23;
        }
        if (TotalThreatLevel == 6)
        {
            SetkaScaleZ = 35;
            SetkaScaleX = 35;
        }
        if (TotalThreatLevel == 7)
        {
            SetkaScaleZ = 99;
            SetkaScaleX = 99;
        }
Почему ты не используешь switch?

public static class PlayerKarman
И почему карман статический?

PS. нэйминг у тебя шикарный
__________________
Абсолютли!
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
Arton (25.03.2020)
Старый 25.03.2020, 19:25   #77
Crystal
Терабайт исходников
 
Аватар для Crystal
 
Регистрация: 05.07.2007
Сообщений: 4,758
Написано 1,490 полезных сообщений
(для 4,840 пользователей)
Ответ: I.D.S. MONSTERS

Почему ты не используешь switch?

public static class PlayerKarman
И почему карман статический?

PS. нэйминг у тебя шикарный
Не использую по тому, что не знаю о чём речь.
Это первый мой проект за десятилетие,
Первый проект на юнити, первый на си шарп.
Я в процессе изучения, разрабатываю как могу.
Последнее что я кодил, это на хорсе под враппером
в блитц физику и пп для ртс типа старкрафта 2,
На бэйсике.

Статический для того, чтобы иметь глобальный
Скриптовый файл без привязки к объектам.
Знаю, что можно объявить команду,
Чтобы скрипт не удалялся при смене сцен, такой
Способ тоже буду юзать, но в данный момент
Мне нужно так как есть.

Нэйминг у меня всегда такой был )))
Главное, что мне всё понятно.
(Offline)
 
Ответить с цитированием
Старый 26.03.2020, 06:35   #78
ABTOMAT
Ференька
 
Аватар для ABTOMAT
 
Регистрация: 25.01.2007
Адрес: улица Пушкина дом Колотушкина
Сообщений: 10,622
Написано 5,370 полезных сообщений
(для 15,482 пользователей)
Ответ: I.D.S. MONSTERS

Сообщение от Crystal Посмотреть сообщение
Не использую по тому, что не знаю о чём речь.
https://docs.microsoft.com/ru-ru/dot...eywords/switch

Это оператор для разбора случаев разных значений одной переменной.

switch (переменая)
{
                case 
проверяемоезначение1:

                    
// Делаем дела
                    
break; // Прекращаем проверку, иначе код пойдёт дальше

                
case проверяемоезначение2:

                    
// Делаем дела
                    
break; // Прекращаем проверку

                
default:

                    
// Действия в случае, если не подошёл ни один из вариантов (аналог else)
                    
break; // Прекращаем проверку

Твой код как раз случай из учебника, когда используют switch-case

switch (TotalThreatLevel)
        {
                case 
1:

                    
SetkaScaleZ 11;
                    
SetkaScaleX 11;
                    break;

                case 
2:

                    
SetkaScaleZ 13;
                    
SetkaScaleX 13;
                    break;

                case 
3:

                    
SetkaScaleZ 15;
                    
SetkaScaleX 15;
                    break;

                case 
4:

                    
SetkaScaleZ 19;
                    
SetkaScaleX 19;
                    break;

                case 
5:

                    
SetkaScaleZ 23;
                    
SetkaScaleX 23;
                    break;

                case 
6:

                    
SetkaScaleZ 99;
                    
SetkaScaleX 99;
                    break;

        } 
В Блице, кстати, тоже он был.

Ну в принципе в программировании действует правило "Если работает, то ты уже молодец"
__________________
Мои проекты:
Анальное Рабство
Зелёный Слоник
Дмитрий Маслов*
Различие**
Клюква**

* — в стадии разработки
** — в стадии проектирования
Для проектов в стадии проектирования приведены кодовые имена

(Offline)
 
Ответить с цитированием
Эти 3 пользователя(ей) сказали Спасибо ABTOMAT за это полезное сообщение:
Arton (26.03.2020), Crystal (26.03.2020), St_AnGer (26.03.2020)
Старый 26.03.2020, 08:51   #79
Crystal
Терабайт исходников
 
Аватар для Crystal
 
Регистрация: 05.07.2007
Сообщений: 4,758
Написано 1,490 полезных сообщений
(для 4,840 пользователей)
Ответ: I.D.S. MONSTERS

Сообщение от ABTOMAT Посмотреть сообщение
https://docs.microsoft.com/ru-ru/dot...eywords/switch

Это оператор для разбора случаев разных значений одной переменной.

switch (переменая)
{
                case 
проверяемоезначение1:

                    
// Делаем дела
                    
break; // Прекращаем проверку, иначе код пойдёт дальше

                
case проверяемоезначение2:

                    
// Делаем дела
                    
break; // Прекращаем проверку

                
default:

                    
// Действия в случае, если не подошёл ни один из вариантов (аналог else)
                    
break; // Прекращаем проверку

Твой код как раз случай из учебника, когда используют switch-case

switch (TotalThreatLevel)
        {
                case 
1:

                    
SetkaScaleZ 11;
                    
SetkaScaleX 11;
                    break;

                case 
2:

                    
SetkaScaleZ 13;
                    
SetkaScaleX 13;
                    break;

                case 
3:

                    
SetkaScaleZ 15;
                    
SetkaScaleX 15;
                    break;

                case 
4:

                    
SetkaScaleZ 19;
                    
SetkaScaleX 19;
                    break;

                case 
5:

                    
SetkaScaleZ 23;
                    
SetkaScaleX 23;
                    break;

                case 
6:

                    
SetkaScaleZ 99;
                    
SetkaScaleX 99;
                    break;

        } 
В Блице, кстати, тоже он был.

Ну в принципе в программировании действует правило "Если работает, то ты уже молодец"
Благодарю. Будем знать. Я правда себя программистом не считаю, им и не являюсь,
по этому многого не знаю. Ну как говорится, был и был в блитце )

Так посмотреть на код, та же жопа, только вид сбоку.
Этакий миницикл. Мне важно понять, в чём преимущество
над моим папуасским говнокодом? Что тут последовательно выполняется
проверка на значение, что в моём случае то же самое.
Или я что-то упускю из виду? А то все эти IF в апдейте всё равно
по очереди исполняются. Особой экономии строк тоже не вижу,
наличие break сводит её на ноль.

Наверно свитчи нужны для каких-то более сложных конструкций?
Просто пока я вижу смысл свитча в том, чтобы остановить последующую проверку,
если мы нашли уже нужное число. Однако в случае поиска среди семи значений,
это сомнительная экономия вычислительной мощности. Я думаю она нужна, для каких-то
расчётов проводящихся в огромном количестве одновременно. В моём случае это разовая
проверка в скрипте.

Но я думаю это знание мне может в будущем пригодится для каких-либо расчётов в скриптах спавнящихся монстров,
так-как монстров будет много на карте, следовательно скрипты будут часто перебирать какие-то переменные.

Добавил: вспомнил где я в блитце использовал свитчи, аш 13 лет назад!
С их помощью я разбивал игру на сцены, нужные функции запускались при определённом
значении переменной, как раз через "case", чтобы делить игру на стартовое меню, и игровой уровень.
В юнити такая нужда отпала, и я собственно благополучно забыл о данной фиче )
(Offline)
 
Ответить с цитированием
Ответ


Опции темы

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


Часовой пояс GMT +1, время: 18:28.


vBulletin® Version 3.6.5.
Copyright ©2000 - 2020, Jelsoft Enterprises Ltd.
Перевод: zCarot
Style crйe par Allan - vBulletin-Ressources.com