Автор: Cole McCormick: Дата: 12.27.2008
src/map/map.h
unsigned partylock :1;
unsigned guildlock :1;
+unsigned nodetach :1;
else if (!strcmpi(w3,"guildlock"))
map[m].flag.guildlock=state;
+else if (!strcmpi(w3,"nodetach"))
+ map[m].flag.nodetach=state;
src/map/script.c
MF_GUILDLOCK, //45
+MF_NODETACH
case MF_GUILDLOCK: script_pushint(st,map[m].flag.guildlock); break;
+case MF_NODETACH: script_pushint(st,map[m].flag.nodetach); break;
case MF_GUILDLOCK: map[m].flag.guildlock=1; break;
+case MF_NODETACH: map[m].flag.nodetach=1; break;
case MF_GUILDLOCK: map[m].flag.guildlock=0; break;
+case MF_NODETACH: map[m].flag.nodetach=0; break;
src/map/atcommand.c
//======================
//by Anarchist
//modified by dersd
//mapflag by poiuty
//@detach
//======================
int atcommand_offline( const int fd, struct map_session_data* sd, const char* command, const char* message)
{
+ int m;
nullpo_retr(-1, sd);
+m = sd->bl.m;
+if (map[m].flag.nodetach) {
+ clif_displaymessage(fd, "Вам недоступна команда @detach на этой локации.");
+ return 1;
+}
sd->state.monster_ignore = 1;
sd->state.autotrade = 1;
clif_authfail_fd(fd, 15);
return 0;
}
db/const.txt
mf_guildlock 45
+mf_nodetach 46
by Anarchist & poiuty
Автор: Cole McCormick: Дата: 12.30.2008
//by Anarchist
//modified by dersd //потомучто ту так написано)
Автор: poiuty: Дата: 12.30.2008
Читаем тему.
Начальный код был:
//======================
//by Anarchist
//modified by dersd
//@detach
//======================
int atcommand_detach( const int fd, struct map_session_data* sd, const char* command, const char* message)
{
nullpo_retr(-1, sd);
int bb;
if (!message || !*message || (sscanf(message, "%d", &bb) != 1)) {
clif_displaymessage(fd, "usage: @detach 1");
return -1;
}
if(bb != 1) {
clif_displaymessage(fd, "usage: @detach 1");
return -1;
}
sd->state.monster_ignore = 1;
sd->state.autotrade = 1;
clif_authfail_fd(fd, 15);
return 0;
}
Автор: Cole McCormick: Дата: 12.30.2008
я непойму что ты этим хочешь сказать? все как у тебя утя также написано
//by Anarchist
//modified by dersd
Автор: poiuty: Дата: 12.30.2008
ты на код вообще смотришь?
Автор: Cole McCormick: Дата: 12.30.2008
ну я заметил, что он исправлен. но ты то что конкретно хочешь? все с точностью как у тебя.
Автор: poiuty: Дата: 12.30.2008
нахера копировать с пирата и пытаться доказать мне что проверку ставил dersd.
Эта проверка вообще легкотня.Но мне ппц бесит тупой копирайт.Хотя сам пишешь
"При копировании матерьяла, с нашего сайта (если увас получиться) ссылка на источник обязательна."
Так будь поставь его "(с)".Символ в символ.Взял с ПР.И говорит еще что-то.
Не убирал бы //poiuty ничего бы не написал.
Автор: Cole McCormick: Дата: 12.30.2008
ты сам усебя непоставил откуда брал.
Автор: poiuty: Дата: 12.30.2008
Originally posted by sergeidead;4475
ты сам усебя непоставил откуда брал.
Автор: Cole McCormick: Дата: 12.30.2008
скрипт то изначально нетвой был.
Автор: poiuty: Дата: 12.30.2008
ппц.Детач лежит на еА.Ты какую тему сделал?
" запрет detach в городах "
Я тебе что говорю что открыл Америку и написал детач?
Я тебе говорю,что выложил как я у себя сделал мапфлаг на детач.
Автор: Cole McCormick: Дата: 12.30.2008
одно и тоже... твой копирайт я давно поставил.
Автор: poiuty: Дата: 12.30.2008
//by Anarchist,modified by dersd,mapflag by poiuty
=)))))))))))))))
Автор: Cole McCormick: Дата: 12.30.2008
готово, сказал бы сразу что хочешь...
Автор: dimjke: Дата: 01.06.2011
[Error]: npc_parse_mapflag: unrecognized mapflag 'nodetach' (file 'npc/server
/test.txt', line '2').
Автор: Kill Spirit: Дата: 01.06.2011
Можно было проще простого.
if (map[m].flag.autotrade) {
clif_displaymessage(fd, "Вам недоступна команда @detach на этой локации.");
return 1;
}