Правила форума Гаранты форума
Размещение рекламы AMX-X компилятор

Здравствуйте, гость Вход | Регистрация

Наши новости:

14-дек
24-апр
10-апр
11-апр

switch

Статус пользователя AVOG
сообщение 28.10.2016, 14:34
Сообщение #1


Стаж: 9 лет 6 месяцев
Город: Актобе

Сообщений: 25
Благодарностей: 3
Полезность: 14

всем привет, почему выдает ошибку?
ошибку бьет в case

Код:
g_iShop[SHOP_BHOP] = 12;

switch(item) {
case g_iShop[SHOP_BHOP]: {

}
}



OverCS.Ru - Магазин цифровых товаров.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   Цитировать сообщение
Статус пользователя Unknown
сообщение 28.10.2016, 17:04
Сообщение #2
Стаж: 10 лет

Сообщений: 291
Благодарностей: 70
Полезность: < 0

может проблема в ящике


Аткажитесъ от плагенов бес исходника.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя AVOG
сообщение 28.10.2016, 17:27
Сообщение #3


Стаж: 9 лет 6 месяцев
Город: Актобе

Сообщений: 25
Благодарностей: 3
Полезность: 14

Цитата(Unknown @ 28.10.2016, 18:04) *
может проблема в ящике


Он ругается на кейс, якобы туда нельзя переменную. Просто item может равняться от 0 до 1000, а зарегистрированные вещи заносятся в массив. Удобно было бы просто юзать через кейс.

switch (item) {
case g_iShop[SHOP_GRAVITY]: {
//работаю
}
}

item приходит например 12 и g_iShop[SHOP_GRAVITY] ровняется 12.
Может не правильно создаю массив?

enum shop_items {
SHOP_GRAVITY
}
new g_iShop[SHOP_GRAVITY];

plugin_init:
g_iShop[SHOP_GRAVITY] = dr_register_shop("Гравитация"); //Отправляет его ид в магазине


OverCS.Ru - Магазин цифровых товаров.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Unknown
сообщение 28.10.2016, 18:03
Сообщение #4
Стаж: 10 лет

Сообщений: 291
Благодарностей: 70
Полезность: < 0

AVOG, покажи весь код. Да свич не для таких целей


Аткажитесъ от плагенов бес исходника.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя georgeml
сообщение 28.10.2016, 18:05
Сообщение #5
Стаж: 12 лет

Сообщений: 1467
Благодарностей: 439
Полезность: 423

AVOG, case- константа. при компиляции вашего кода у него отсутствует значение
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Unknown
сообщение 28.10.2016, 18:11
Сообщение #6
Стаж: 10 лет

Сообщений: 291
Благодарностей: 70
Полезность: < 0

new g_iShop[SHOP_GRAVITY]
->
new g_iShop[shop_items]

Хотя это тоже неправильно. Лучше создать динамичный массив и написать только core плагин. А не запихать все итемы в один.


Аткажитесъ от плагенов бес исходника.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя ssx
сообщение 28.10.2016, 20:11
Сообщение #7


Стаж: 12 лет

Сообщений: 2237
Благодарностей: 1343
Полезность: 836

Так нельзя делать:
Код:
case g_iShop[SHOP_BHOP]:


Отредактировал: ssx, - 28.10.2016, 20:11


[Half-Life DM FFA] 78.152.169.100:27016
[CS 1.6 GunGame] 78.152.169.100:27018
[CS 1.6 DM AIM] 78.152.169.100:27017
[CS 1.6 DM FFA] 78.152.169.100:27015
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя AVOG
сообщение 28.10.2016, 21:11
Сообщение #8


Стаж: 9 лет 6 месяцев
Город: Актобе

Сообщений: 25
Благодарностей: 3
Полезность: 14

в php и c++ можно использовать case с переменной, но тут какие то проблемы. можно как то это исправить?


OverCS.Ru - Магазин цифровых товаров.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Serp
сообщение 28.10.2016, 22:35
Сообщение #9
Стаж: 10 лет
Город: Запорожье

Сообщений: 69
Благодарностей: 12
Полезность: 37

Switch должен иметь циферку для выбора :D

Код:

// Как юзается switch
switch(item) {
case 1: {
// Ваш код
}
case 2: {
// Ваш код
}
case 3: {
// Ваш код
}
}


Отредактировал: Serp, - 28.10.2016, 22:36
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя SISA
сообщение 28.10.2016, 23:01
Сообщение #10
Стаж: 15 лет

Сообщений: 2774
Благодарностей: 2956
Полезность: 994

Serp,

Не обязательно цифру: https://c-s.net.ua/forum/topic83421.html?vi...st&p=950563
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Serp
сообщение 28.10.2016, 23:12
Сообщение #11
Стаж: 10 лет
Город: Запорожье

Сообщений: 69
Благодарностей: 12
Полезность: 37

SISA, Спасибо, совсем забыл, да и имел с этим дело только один раз. Но такое "case g_iShop[SHOP_BHOP]:" точно не сделать.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
  Ответить в данную темуНачать новую тему
 
0 пользователей и 1 гостей читают эту тему: