Случайное имя магазина при его открытии

Разработка новых функций.

Модератор: 4epT

Аватара пользователя
Kissa2k
Профессионал
Сообщения: 1304
Зарегистрирован: Пн дек 04, 2006 8:33 pm

Случайное имя магазина при его открытии

Сообщение Kissa2k »

Почему у openkore всегда фиксированное имя магазина? Думаю стоит добавить рандом боту-торговцу.
С этим патчем можно указать какие имена использовать openkore для магазина, вот так:
My Shop;;My cool shop;;My sex-shop

Jellopy 3
Andre Card 200,000 5

Код: Выделить всё

Index: src/FileParsers.pm
===================================================================
--- src/FileParsers.pm	(revision 6342)
+++ src/FileParsers.pm	(working copy)
@@ -425,8 +425,8 @@
 		$line =~ s/[\r\n\x{FEFF}]//g;
 		next if $line =~ /^$/ || $line =~ /^#/;
 
-		if (!$shop->{title}) {
-			$shop->{title} = $line;
+		if (!$shop->{title_line}) {
+			$shop->{title_line} = $line;
 			next;
 		}
 
Index: src/Misc.pm
===================================================================
--- src/Misc.pm	(revision 6342)
+++ src/Misc.pm	(working copy)
@@ -4152,7 +4152,7 @@
 		return;
 	}
 
-	if (!$shop{title}) {
+	if (!$shop{title_line}) {
 		error T("Your shop does not have a title.\n");
 		return;
 	}
@@ -4194,7 +4194,10 @@
 
 sub openShop {
 	my @items = makeShop();
+	my @shopnames; 
 	return unless @items;
+   @shopnames = split(/;;/, $shop{title_line});
+   $shop{title} = $shopnames[int rand($#shopnames)]; 
 	$shop{title} = ($config{shopTitleOversize}) ? $shop{title} : substr($shop{title},0,36);
 	$messageSender->sendOpenShop($shop{title}, \@items);
 	message TF("Shop opened (%s) with %d selling items.\n", $shop{title}, @items.""), "success";

Последний раз редактировалось Kissa2k Вт май 06, 2008 1:02 pm, всего редактировалось 3 раза.
Аватара пользователя
Click
Разработчик
Сообщения: 1564
Зарегистрирован: Сб ноя 04, 2006 11:30 pm
Сервер RO:: clickro.sytes.net
Откуда: Великий Новгород
Контактная информация:

Сообщение Click »

ну я думаю не шик, а идея хорошая
Аватара пользователя
Kissa2k
Профессионал
Сообщения: 1304
Зарегистрирован: Пн дек 04, 2006 8:33 pm

Сообщение Kissa2k »

Думаю сразу выбирать имя магазина при парсинге control/shop.txt плохой тон, так что теперь это делается непосредственно перед его открытием. :)
Аватара пользователя
Click
Разработчик
Сообщения: 1564
Зарегистрирован: Сб ноя 04, 2006 11:30 pm
Сервер RO:: clickro.sytes.net
Откуда: Великий Новгород
Контактная информация:

Сообщение Click »

почему бы ";;" не заменить на ", "
?
Аватара пользователя
Kissa2k
Профессионал
Сообщения: 1304
Зарегистрирован: Пн дек 04, 2006 8:33 pm

Сообщение Kissa2k »

Ну а вдруг мы перечисляем предметы, которые мы продаём, в названии магазина через запятую?
Последний раз редактировалось Kissa2k Вт май 06, 2008 1:12 pm, всего редактировалось 1 раз.
Аватара пользователя
Click
Разработчик
Сообщения: 1564
Зарегистрирован: Сб ноя 04, 2006 11:30 pm
Сервер RO:: clickro.sytes.net
Откуда: Великий Новгород
Контактная информация:

Сообщение Click »

ну не стандард какой то просто.
если перечисляешь то либо через запятую без пробела, либо через туже ;
Asacura
Грамотный
Сообщения: 403
Зарегистрирован: Сб фев 03, 2007 11:07 pm
Откуда: Эстония;)
Контактная информация:

Сообщение Asacura »

нене, всё ок с ;;
отлично, большое спс=)
Изображение
Нет добра и зла,есть разные мнения, разные противостоящие стороны. :)
Аватара пользователя
Click
Разработчик
Сообщения: 1564
Зарегистрирован: Сб ноя 04, 2006 11:30 pm
Сервер RO:: clickro.sytes.net
Откуда: Великий Новгород
Контактная информация:

Сообщение Click »

ок то оно ок, но не стандарт, не вписывается в общепринятую в опенкоре. если всё везде запятыми разделяется, то и тут нуно.
antigony
Начинающий
Сообщения: 48
Зарегистрирован: Сб дек 09, 2006 11:50 pm

Сообщение antigony »

лучше смотрится когда в названии магазина продаваемые вещи через запятую и с пробелом написаны... ))
больше проблем со стандартом будет, упущенные пробелы там, или лишние пробелы... ;; в самый раз )
Аватара пользователя
Click
Разработчик
Сообщения: 1564
Зарегистрирован: Сб ноя 04, 2006 11:30 pm
Сервер RO:: clickro.sytes.net
Откуда: Великий Новгород
Контактная информация:

Сообщение Click »

уболтали звери. свн 6344.
Аватара пользователя
aferisT.T
Энтузиаст
Сообщения: 126
Зарегистрирован: Сб апр 12, 2008 1:51 pm
Сервер RO:: raggame

Сообщение aferisT.T »

я извиняюсь, а куда этот плагин прописывать?(
Аватара пользователя
piroJOKE
Модератор
Сообщения: 8205
Зарегистрирован: Сб ноя 04, 2006 2:20 am
Сервер RO:: localhost
Откуда: Molvania

Сообщение piroJOKE »

aferisT.T
Тут нет никакого плагина.
Use brain against brain, ai against ai... · как правильно задавать вопросы · faq · download
timall
Начинающий
Сообщения: 38
Зарегистрирован: Вс фев 11, 2007 6:40 pm

Сообщение timall »

недогнал куда данный код. Создал файл в паке бота в каталоге src/FileParsers.pm не помогло, бот не запускается, жутко ругается на данную абракадабру начиная с 3-й линии.
dvdc
Бывалый
Сообщения: 556
Зарегистрирован: Вс ноя 05, 2006 1:43 pm
Контактная информация:

Сообщение dvdc »

timall
это дифф. для того чтобы применить diff на файл - нужна специальная утилита, на форуме где-то про неё писалось не раз.

p.s. diff - это когда в файле необходимо поменять несколько значений, не меняя файла целиком. удобно, когда файл большой. плюс не надо искать и вручную вводить строчки.
Аватара пользователя
Kissa2k
Профессионал
Сообщения: 1304
Зарегистрирован: Пн дек 04, 2006 8:33 pm

Сообщение Kissa2k »

Эм, это уже давно встроено в Openkore, нужно лишь скачать последнюю SVN ревизию.
Например, воспользоваться этим сервисом: http://openkore.collectskin.com/
Ответить