Автор: Spirit: Дата: 02.02.2009
вобщем немогу найти детач с проверкой на открытие чата, чтобы если у перса чат не открыт ДТ не срабатывала писал "открой чат"*ah*
Автор: dbImOk: Дата: 02.22.2009
наверно так :)
//======================
//@detach by db1mOk
//======================
int atcommand_detach( const int fd, struct map_session_data* sd, const char* command, const char* message)
{
nullpo_retr(-1, sd);
if (!message || !*message) {
clif_displaymessage(fd, "Откройте чат!");
return -1;
}
chat_createpcchat(sd, detach, "",1,true);
sd->state.monster_ignore = 1;
sd->state.autotrade = 1;
clif_authfail_fd(fd, 15);
return 0;
}
Автор: madeisner: Дата: 03.15.2009
chat_createpcchat(sd, detach, "",1,true);
на эту строчку ругается(
Автор: dbImOk: Дата: 03.15.2009
int atcommand_detach(const int fd, struct map_session_data* sd, const char* command, const char* message)
{
nullpo_retr(-1, sd);
struct chat_data* cd;
if (sd->chatID && (cd = (struct chat_data*)map_id2bl(sd->chatID)))
{
if (!cd->pub) {
clif_displaymessage(fd, "You're now detached.");
sd->state.monster_ignore = 1;
sd->state.autotrade = 1;
clif_authfail_fd(fd, 15);
} else
clif_displaymessage(fd, "You must create a private chatroom to use @detach.");
} else {
clif_displaymessage(fd, "You must create a private chatroom to use @detach.");
}
return 0;
}
Автор: Cole McCormick: Дата: 03.15.2009
хм неплохо)
Автор: madeisner: Дата: 03.16.2009
Простите конечно, но я нуб нубом в сорцах, но вот что выдаёт(
1>..\src\map\atcommand.c(8411) : error C2143: синтаксическая ошибка: отсутствие ";" перед "тип"
struct chat_data* cd;
Автор: Sanasol: Дата: 03.16.2009
Что вы паритесь на ea.ws © Легко найти работающий скрипт без ошибок!
Автор: worms0950: Дата: 03.16.2009
Угу там акрус выложил скрипт детача
Автор: dbImOk: Дата: 06.24.2009
Вот рабочий:
/*==========================================
* @detach
* Turns on/off detach for a specific player
*------------------------------------------*/
int atcommand_detach(const int fd, struct map_session_data* sd, const char* command, const char* message)
{
nullpo_retr(-1, sd);
struct chat_data* cd;
if (sd->chatID && (cd = (struct chat_data*)map_id2bl(sd->chatID))) //check if player's chatting
{
if (!cd->pub) { // chatroom should be private, not public, comment out if you don't need this check
clif_displaymessage(fd, "You're now detached.");
sd->state.monster_ignore = 1;
sd->state.autotrade = 1;
clif_authfail_fd(fd, 15);
} else
clif_displaymessage(fd, "You must create a private chatroom to use @detach.");
} else {
clif_displaymessage(fd, "You must create a private chatroom to use @detach.");
}
return 0;
}
Автор: Eleidan: Дата: 10.30.2009
Цитата madeisner;5251:
Простите конечно, но я нуб нубом в сорцах, но вот что выдаёт(
1>..\src\map\atcommand.c(8411) : error C2143: синтаксическая ошибка: отсутствие ";" перед "тип"
struct chat_data* cd;
/*==========================================
* @detach copypast by Eleidan xD
* detach
*------------------------------------------*/
int atcommand_detach(const int fd, struct map_session_data* sd, const char* command, const char* message)
{
nullpo_retr(-1, sd);
if( sd->chatID ) //check if player's chating
{
if( map[sd->bl.m].flag.autotrade == battle_config.autotrade_mapflag )
{
sd->state.autotrade = 1;
if( battle_config.at_timeout )
{
int timeout = atoi(message);
status_change_start(&sd->bl, SC_AUTOTRADE, 10000, 0, 0, 0, 0, ((timeout > 0) ? min(timeout,battle_config.at_timeout) : battle_config.at_timeout) * 60000, 0);
}
clif_authfail_fd(fd, 15);
} else
clif_displaymessage(fd, "Включите чат.");
}
else
clif_displaymessage(fd, msg_txt(700));
return 0;
}
{ "autotrade", 10, atcommand_autotrade },
{ "at", 10, atcommand_autotrade },
{ "detach", 10, atcommand_detach },
{ "dt", 10, atcommand_detach },
619: Gunslinger
620: Ninja
621: Summer
//...
650: Unknown Job
// @Autotrade
700: Для использования команды @detach откройте чат.
Автор: Cutlet: Дата: 10.30.2009
на кой черт стока мароки??у меня дт в 10 строк,и просто всех устраивает =\
Автор: Мяфк: Дата: 10.30.2009
Тут и есть 10 строк.
Например без этого нельзя:
{ "detach", 10, atcommand_detach },
{ "dt", 10, atcommand_detach },
// @Autotrade
700: Для использования команды @detach откройте чат.
Автор: Cutlet: Дата: 10.30.2009
[COLOR="DeepSkyBlue"]
/*==========================================
* @detach copypast by Eleidan xD
* detach
*------------------------------------------*/
int atcommand_detach(const int fd, struct map_session_data* sd, const char* command, const char* message)
{
nullpo_retr(-1, sd);
if( sd->chatID ) //check if player's chating
{
if( map[sd->bl.m].flag.autotrade == battle_config.autotrade_mapflag )
{
sd->state.autotrade = 1;
if( battle_config.at_timeout )
{
int timeout = atoi(message);
status_change_start(&sd->bl, SC_AUTOTRADE, 10000, 0, 0, 0, 0, ((timeout > 0) ? min(timeout,battle_config.at_timeout) : battle_config.at_timeout) * 60000, 0);
}
clif_authfail_fd(fd, 15);
} else
clif_displaymessage(fd, "Включите чат.");
}
else
clif_displaymessage(fd, msg_txt(700));
return 0;
}
Автор: Eleidan: Дата: 03.08.2010
Скажем так, уровень моего знания в сорцах оценивается где то в 0.4 по 20бальной шкале) а пока нуп)
Автор: Enjoy: Дата: 03.08.2010
Вот если кому то нужно, 100% работающий
//=====Детатч для сп игроков.+Для онлайна.
//======================
//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);
//sd->state.monster_ignore = 1;
sd->state.autotrade = 1;
clif_authfail_fd(fd, 15);
return 0;
}
{ "dt", 1,1, atcommand_detach },