Как сделать?

Re: Как сделать?

KeyMasterOfGozer,
You can try to create a second array with names of your NPCs.

Код:

$NPC_Name[0] = 'Bob'

$NPC_Name[1] = 'Jack'
$NPC_Name[2] = 'Linda'

NPC_Age['Bob'] = 18
NPC_Age['Jack'] = 15
NPC_Age['Linda'] = 25

i=0
:ArrayPrintLoop
if i < arrsize('NPC_Age'):
    !Print data from first element
    *pl "NPC_Age[<<$NPC_Name[i]>>]=<<NPC_Age[$NPC_Name[i]]>>"
    i += 1
    jump 'ArrayPrintLoop'
end

I think it's better to use numbers instead of strings as indexes for arrays.

Sorry for my bad English big_smile

NickoAilus
Админъ.
useravatar
Offline
105 Сообщений
Информация о пользователе в сообщениях
Администратор отключил публичную отправку сообщений

Re: Как сделать?

NickoAilus написал(а):

KeyMasterOfGozer,
You can try to create a second array with names of your NPCs.

Код:

$NPC_Name[0] = 'Bob'

$NPC_Name[1] = 'Jack'
$NPC_Name[2] = 'Linda'

NPC_Age['Bob'] = 18
NPC_Age['Jack'] = 15
NPC_Age['Linda'] = 25

i=0
:ArrayPrintLoop
if i < arrsize('NPC_Age'):
    !Print data from first element
    *pl "NPC_Age[<<$NPC_Name[i]>>]=<<NPC_Age[$NPC_Name[i]]>>"
    i += 1
    jump 'ArrayPrintLoop'
end

I think it's better to use numbers instead of strings as indexes for arrays.

Sorry for my bad English big_smile

Your English is good!  Thank you for your help.

My need is to create a more generic procedure to print an arbitrary array fr debug purposes.  Surely the internal platform must be able to know the string index in order to function.  Most languages have a way to loop through and know both the key and the value.  I am wondering if there is some method (maybe hidden) to find the list of items in a string indexed array.

KeyMasterOfGozer
useravatar
Онлайн
2 Сообщений
Информация о пользователе в сообщениях
Администратор отключил публичную отправку сообщений

Re: Как сделать?

KeyMasterOfGozer,
if you need... hm... sort throught in order, you can use number indexes. Number indexes crossed with text indexes.
check:

Код:

NPC_Age['Bob'] = 18

NPC_Age['Jack'] = 15
NPC_Age['Linda'] = 25
NPC_Age[0]
NPC_Age[1]
NPC_Age[2]

You can't resieved text indexes from it.

Sorry MY Bad English. See http://qsp.su/index.php?option=com_agor … Поиск
Google-Translate in your help.

Aleks Versus
воздвигатель башни
useravatar
Offline
1502 Сообщений
Информация о пользователе в сообщениях
Администратор отключил публичную отправку сообщений

Re: Как сделать?

Здравствуйте. Я пробую писать в QSP/ И столкнулся с проблемой.
Задача: у персонажа есть некоторая статистика. Я написал параметры этой статистики на отдельной локации в виде массива.
Потом я на проверке вывел эту статистику в формате "У вас <<денег>> золотых. Вы <<$денег>>"
моя проблема: текстовая переменная, которая написана на отдельной локации не отображается в тексте($денег).
НО: если писать характеристику персонажа в одной локации, то все норм.
Я не понимаю, в чем проблема.
Я переписывал переменную $денег c условиями. if денег<0 then $денег=' нищий' else $денег=' богатый'
Некоторые пишут команду set  ЗАЧЕМ?
Спасибо за ответ

Poganec37
useravatar
Offline
15 Сообщений
Информация о пользователе в сообщениях
Администратор отключил публичную отправку сообщений

Re: Как сделать?

Poganec37, порядок соблюден? Сначала определяешь переменную денег, потом код:

Код:


if денег<0:
$денег='нищий'
else
$денег='богатый'
end

потом текст. Скорее всего у тебя текст идёт раньше кода, и переменная $денег пустая.
У тебя возможна ситуация, когда деньги уходят в минус?
set - я так понимаю, использовалась для присвоения значения переменной в ранних версиях qsp, теперь использовать не обязательно.

dmvikar
useravatar
Онлайн
16 Сообщений
Информация о пользователе в сообщениях
Администратор отключил публичную отправку сообщений

Информация

Статистика форума:
 
Всего тем:
977
Всего опросов:
14
Всего сообщений:
16790646
Всего сообщений сегодня:
6
Пользователи форума:
 
Всего пользователей:
2390
Последним зарегистрировался:
KeyMasterOfGozer