RU 📌 Pinned

Как сделать?

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

как сделать картинку фоном? ну, чтобы анимации и картинки отображались не на фоне выбранного цвета, а на фоне картинки как в аэро?

Aleks Versus Moderator 09.12.2015 16:42 (10 years ago)

Aaaspavel,

$backimage = 'путь/картинка.jpg'

Подскажите в чём ошибка? Дело в том, что не выводится msg. (Очистка и перезапуск локации делаются специальной кнопкой “Обновить”.

if Zarya => 0:
 act 'Надеть Зарю.':
  *PL 'Вы надели Зарю. Лёгкая броня с одним слотом под артефакт. Часто используется новичками, но особой защиты не даёт.'
  set $bronya_name = 'Бронежилет: Заря'
  set Nadet_Bron = 1
 end
else Nadet_Bron = 1:
  msg 'На вас уже надета броня!'
  end
end

спасибо, только теперь проблема с текстом… а как сделать чтобы текст на фоне был?
нифига не работает тег в qsp

насколько я понял msg работает так:
msg ‘На вас уже надета броня!’
gt $curloc
иначе выполняется вход на локацию, а не обновление

Aleks Versus Moderator 10.12.2015 21:10 (10 years ago)

NiceFixPrice,
в коде есть несколько ошибок. Вместо else следует использовать elseif. Последний end - лишний, либо выдран из остального кода. И потом, если это отрывок, не видно, меняется ли значение переменной Zarya. Если не меняется, естественно сообщение выводиться не будет, поскольку верхнее условие всегда будет верно.
Aaaspavel,
не понимаю, что значит текст на фоне? Для какого плеера пишешь? Подсветка фона текста в классическом плеере невозможна. Хотя можешь попробовать стилизовать <span>

<span style="background:#ffff00">текст</span>

Повторюсь: скорее всего в классике не сработает. В Quest Navigator такая подсветка осуществима.

NiceFixPrice,

else Nadet_Bron = 1:

Извините, но это бред. Вот так будет работать:

if Nadet_Bron = 1: 
		msg 'На вас уже надета броня!'
else
	if Zarya => 0: 
		act 'Надеть Зарю.': 
			*PL 'Вы надели Зарю. Лёгкая броня с одним слотом под артефакт. Часто используется новичками, но особой защиты не даёт.' 
			$bronya_name = 'Бронежилет: Заря' 
			Nadet_Bron = 1 
		end 
	end 
end

Но все равно этот код - чепуха: он не отвечает на вопрос, что делать, когда Nadet_Bron <> 1, а Zarya < 0.

P.S. Откуда берутся адепты оператора set? Особенно в последнее время выросла ваша численность.

evp:

P.S. Откуда берутся адепты оператора set? Особенно в последнее время выросла ваша численность.

Во всем виноват справочник. Или, плохой пример.

evp,
Я взял моду на set из School Life. Так код выглядит приятней глазу.
Zarya не может быть меньше нуля - это предмет в инвентаре.
Nadet_Bronya показывает, если 1 - то броня надета. Если 0 - то брони нет на теле.
Там дальше есть действие, если Nadet_Bronya = 1, “Снять броню”.
Спасибо, работает теперь.

NiceFixPrice, код “выглядит приятней глазу” при адекватной расстановке табуляции, если уж пошла речь о читаемости кода. По моему мнению, оператор setчитаемость не улучшает ни на йоту, но это тот случай, когда на вкус все фломастеры разные, в отличие от первого утверждения. Озаботились бы табуляцией - больше толку было бы.

Теперь по коду. Вы утверждаете: “Zarya не может быть меньше нуля - это предмет в инвентаре”. Если я вас правильно понял, то Zarya = 0 - этот предмет в инвентаре отсутствует. Как можно надеть то, чего нет? Вот почему этот код - чепуха.

evp:

P.S. Откуда берутся адепты оператора set? Особенно в последнее время выросла ваша численность.

set звучит гордо) а еще потому что нету оператора force
FORCE zarya = 1, и все тут. Написал как отрезал)
во всем виноваты плохие примеры, которые мы берем из плохих игр плохих людей

Извините, но меня интересует как сделать например книгу которую можно взять в инвентарь и потом прочитать?

denedi
Вот мой пример:
На локации где у нас есть кнопка, “Новая игра”. В “Выполнить при посещении”, пишем:

$onobjsel = 'ONOBJSEL'

Важно! ONOBJSEL - это название локации, которую обрабатывает $onobjsel, её можно назвать как угодно.
В локации где берем книгу:

ACT 'Взять книгу':
ADDOBJ 'Книга'
*PL 'Интересно что в ней.'
END

В локации ONOBJSEL:

IF $selobj = 'Книга':
UNSEL
CLR
$book_menu[0]='Осмотреть: book_1'
$book_menu[1]='Открыть: book_2'
$book_menu[2]='Назад: back'
MENU '$book_menu'
END

Создаем локации: book_1, book_2 и back.
book_1

*PL ' Книга была обуглена, и сделана с грубой кожи. Очень напоминающую человеческую.'
ACT 'Назад': GT $curloc & !Здесь не уверен что может сработать(я обычно массивами отмечаю все локации).
! Да так код будет работать и без END.

book_2

*PL 'Не много сохранилось текста, да и тот был на не известном мне языке.'
ACT 'Назад': GT $curloc

back

GT $curloc & ! Может и не так

Вот и все собственно. Спасибо что прочитали, рад если сработало)

У меня проблема зачесалась, никак не решу.
Вот есть код боя:

Spoiler

Бой:

loc_ = 7

*NL
'Жук-трупоед: <<Жук_Здоровье>>'
*NL
' Наемник <<$name>>: <<health>>'

IF Жук_Здоровье < 0:
   e=1
  GT '5.5'
END

IF health < 0: GT 'END'

	ACT 'Бить жука':
		 Жук_Здоровье -= attak/Жук_Броня
		health -= Жук_Атака/br
	 GT $CURLOC
	END

	ACT 'Применить способность':
	 XGT 'Способности'
	END
	
	ACT 'Зелья и прочее':
	 XGT 'Зелья'
	END

Способности:

IF e>0:
 ACT 'Ярость':
 *PL 'Вы оглушительно крикнули, вся ваша ярость вышла наружу, придавая вам сил.'
 GS 'uerw'
 e=-1
 DELACT $selact
 END
END

ACT 'Обратно':
 GT '<<$loc[loc_]>>'
END

uerw:

IF e_lvl = 1:
	attak=attak+5
	br=br+4
END

IF e_lvl = 2:
	attak=attak+6
	br=br+5
END

IF e_lvl = 3:
	attak=attak+7
	br=br+6
END

IF e_lvl = 4:
	attak=attak+8
	br=br+7
END

Вывод статов:

IF $selobj = 'Статус':
CLR
PL '| <<$name>> |'
PL '| Здоровье: <<health>>/<<mhealth>> |'
PL '| Урон: <<attak>> |'
PL '| Клан: <<$clan[cq]>> |'
!PL '| День: <<day>>|'
UNSEL
END

Статы жука:

Жук_Здоровье = 40
Жук_Атака = 29
Жук_Броня = 4

Суть в том, что после первой же атаки жизни в ноль, хоть должно сносить 5-7 урона. А у ГГ 110 здоровья со снаряжением.

Spoiler

Куртка:

loc_ = 32
IF aq < 1 or (squire and s_aq < 1):
	ACT 'Купить куртку':
	 IF money + aq*1 < 20:
	  msg 'Пересчитав свои деньги вы понимаете, что не можете этого себе позволить'
	 GT '3.1'
	END
	money -= 20
	health += 100
	mhealth = health
	br+=2
	aq = 1
   GT '3.1'
 END
END


ACT 'К другим товарам':
GT '3.1.1'
END

Меч:

loc_ = 31
IF sq < 1 or (squire and s_sq < 1):
   ACT 'Купить <<$sword[1]>>':
	IF money + sq*1 < 30:
	  msg 'Пересчитав свои деньги вы понимаете, что не можете этого себе позволить'
	 GT '3.2'
	END
	money -= 30
   sq = 1
   attak += 10
   br+=10
  GT '3.2'
 END
END

ACT 'К другим товарам':
GT '3.1.1'
END

Oliver:

ACT ‘Бить жука’:
Жук_Здоровье -= attak/Жук_Броня
health -= Жук_Атака/br
GT $CURLOC
END

Так а ты зачем делишь то?
Получается не целочисленное число. Естественно все статы улетят в ноль.

Log in or Register to post comments.