RU 📌 Pinned

Как сделать?

Dark[Ol(U23)leneri] #34 18.04.2010 22:57 6408 comments 2424655 views

На самом деле ошибка в том, что правильно пишется проволока :) Не терпит QSP неграмотности. Ну и end не закрытый тоже.

Gefestions:

помогите плз найти ошибку.

Spoiler

IF $musor = 1 and проволка < 3:
‘в куче мусора вы находите проволку.’
act ‘взять проволку’:
проволка = проволка +1
ADDOBJ ‘проволка’
‘вы взяли проволку’
else
проволка < 3:
‘вам больше ненадо’
gt ‘musorka’
end
end

А еще условие противоречит само себе. после else скорее всего должно быть проволка > 3

Aleks Versus Moderator 02.09.2015 21:13 (10 years ago)

bkz,
после else согласно синтаксису QSP условие не ставится. Не вводи человека в заблуждение. Там либо elseif, либо лишняя строка; но вернее предположить, что Gefestions неправильно понимает синтаксис if - else/elseif - end и act - end конструкций.

спс большое очень помог, отпало сразу очень много вопросов.

ребята помогите решить одну проблему мне надо сделать в одном действие два действия только не знаю как правильно прописать
пример: Act ‘подать руку’
if frends >= 10
pl’мою руку радостно приняли’
else
pl ‘мое предложение отвергли’
и второе на команду обнять 1-е действие обнять нахально
2-е действие не стоит этого делать

Друзья, а у меня проблема такая: в onnewloc есть такой код, который мне здесь и посоветовали вроде бы (привожу только кусочек, чтоб понятней было):

$main = '<center><<hp>> HP </center>
<br>' + $maintxt 
*clr
*p $main

Его функция - чтоб постоянно сверху висели все необходимые игровые показатели (в данном примере, это классический HP).
А вот захотел я добавить к hp мини-картинку, жмешь на которую, и можно подлечиться при каких-либо условиях (есть чем, игрок не в бою и т.д.)
И я сделал так:

$main = '<center><<hp>> HP <a href="EXEC:uphp=1&gs 'uphp'"><img src="up.jpg"></a> </center>
<br>' + $maintxt 
*clr
*p $main

Где uphp - счетчик отвечающий за то что игрок повышает имено hp, а не другие показатели (на локации uphp должны быть повышалки на все случаи жизни).
Так вот код не работает, потому что символы ’ ’ вокруг uphp все портят, думаю, всем понятно почему. в силу своей неопытности я пытался исправить положение заменив их на “” или просто убрав, или даже так - gs $uphp. но все порождало только новые ошибки. вписывать все if просто в одну строку в exec тоже вроде бы не резон.
Так вот если бы этот href стоял в основном окне, он бы работал, а как сделать его работающим в “выполнить при посещении”, в моем конкретном случае?

Оу, вроде проблема снимается, ну пуская вопрос повисит, может кто расскажет частности) я наобум заменил ‘’ на фигурные скобки и все заработало

Aleks Versus Moderator 04.09.2015 14:55 (10 years ago)

Jack,
есть такая плюшка. “Действия по условию” называется.

Spoiler
! действия начало условия
if obnyat=0:
	! начало действия
	act 'обнять':
		! выставляем маркер
		obnyat=1
		! посещаем текущую локацию
		goto $curloc
	! конец действия
	end
	! начало действия
	act 'подать руку':
		! начало условия
		if friends >= 10:
			! если условие выполняется
			pl 'мою руку радостно приняли'
		else
			! если условие не выполняется
			pl 'моё предложение отвергли'
		! конец условия
		end
	! конец действия
	end
else
	! если obnyat!0
	! действие отмены объятий начало действия
	act 'не стоит этого делать':
		! обнуляем маркер
		obnyat=0
		! посещаем текущую локацию
		goto $curloc
	! конец действия отмены объятий
	end
	! действия обнимания:
	act 'обнять нахально':
		! обнимаем нахально
		!---
		!---
	end
! действия конец условия
end
Aleks Versus Moderator 04.09.2015 14:57 (10 years ago)

mkir,
можно ещё воспользоваться экраном для апострофов. Я так делаю:

‘<center><<hp>> HP <a href=“EXEC:uphp=1 & gs ‘’uphp‘’”><img src=“up.jpg”></a> </center>


Т.е. если ты внимательно читал справку, апострофы и двойные апострофы можно экранировать дублированием. Строка

*pl 'текст''текст'

выводится на экран как

текст’текст

Спасибо! И еще один маленький вопрос. Вот в игре цвета фона какой-то сероватый по умолчанию, мне бы хотелось сделать его идеально белым - и это получается через сам плеер,- выбор цвета фона. А вот в коде игры - если набрать bcolor = 0, то этот самый ноль и будет “сероватым-по умолчанию”. Как добиться белизны через код?)

Dark[Ol(U23)leneri] #34 04.09.2015 17:04 (10 years ago)

bcolor=rgb(256,256,256)

Aleks Versus Moderator 04.09.2015 17:44 (10 years ago)

Dark[Ol(U23)leneri],
не 255,255,255? Не? :D

bcolor=rgb(255,255,255) - если хочешь залить фон именно белым цветом.
bcolor=‘’ возврат к стандарту QSP , то есть сброс всех значений.
А вообще советую http://www.blacksunsoftware.com/downloads/ColorManiaSetup.exe удобная и простая. Есть на русском языке.

Привет, помогите кто сведущ:

!масcив с треками
$tr[0] = 'content/cry.mp3'
$tr[1] = 'content/END.mp3'
$tr[2] = 'content/final_frointer.mp3'
$tr[3] = 'content/ocean_princess.mp3'
! Локация counter
if music_on = 1: &! елси 1 вкл, если 0 выкл.
	play $tracklist[$number],$volume
end
! на локации начала ставлю
music_on = 1
$volume = 100
$number = 1

1) Собственно почему не подгружается массив $tracklist с индексом 1.
2) Идея была в том, что бы дать пользователю $number=$number + 1 и $number=$number - 1 для переключения между мелодиями.

$tracklist[] <> $tr[]

Log in or Register to post comments.