Jump to content
  • 0

Question

4 answers to this question

Recommended Posts

Posted (edited)

Rathena not compatible.

if( (flag = pc_additem(sd, &it, 1)) )
{
clif_additem(sd, 0, 0, flag);
return 1;
}

clif_rental_time(sd->fd, nameid, seconds);
pc_inventory_rental_add(sd, seconds);

if( log_config.enable_logs&LOG_SCRIPT_TRANSACTIONS )
log_pick_pc(sd, "N", nameid, 1, NULL);

return 0;

Edited by Emistry
Codeboxed Content.
Posted (edited)

Look, I have a function here that i think will serve you:

/*==========================================
* rentitemr <item id>,<seconds>,<refine>
* rentitemr "<item name>",<seconds>,<refine>
*------------------------------------------*/
BUILDIN_FUNC(rentitemr)
{
struct map_session_data *sd;
struct script_data *data;
struct item it;
int seconds, refines = 0;
int nameid = 0, flag;

data = script_getdata(st,2);
get_val(st,data);

if( (sd = script_rid2sd(st)) == NULL )
return 0;

if( data_isstring(data) )
{
const char *name = conv_str(st,data);
struct item_data *itd = itemdb_searchname(name);
if( itd == NULL )
{
ShowError("buildin_rentitem: Nonexistant item %s requested.\n", name);
return 1;
}
nameid = itd->nameid;
}
else if( data_isint(data) )
{
nameid = conv_num(st,data);
if( nameid <= 0 || !itemdb_exists(nameid) )
{
ShowError("buildin_rentitem: Nonexistant item %d requested.\n", nameid);
return 1;
}
}
else
{
ShowError("buildin_rentitem: invalid data type for argument #1 (%d).\n", data->type);
return 1;
}

seconds = script_getnum(st,3);
refines = script_getnum(st,4);
memset(&it, 0, sizeof(it));
it.nameid = nameid;
it.identify = 1;
it.expire_time = (unsigned int)(time(NULL) + seconds);
it.refine=refines;

  it.vid = 0;
if( (flag = pc_additem(sd, &it, 1)) )
{
clif_additem(sd, 0, 0, flag);
return 1;
}

clif_rental_time(sd->fd, nameid, seconds);
pc_inventory_rental_add(sd, seconds);

if( log_config.enable_logs&LOG_SCRIPT_TRANSACTIONS )
log_pick_pc(sd, "N", nameid, 1, NULL);

return 0;
}

I will suppose that you know how to add a script command /no1

Edited by Emistry
Please use [CODEBOX] or Attachments for long contents.
Posted

Rathena not compatible.

if( (flag = pc_additem(sd, &it, 1)) )
{
clif_additem(sd, 0, 0, flag);
return 1;
}

clif_rental_time(sd->fd, nameid, seconds);
pc_inventory_rental_add(sd, seconds);

if( log_config.enable_logs&LOG_SCRIPT_TRANSACTIONS )
log_pick_pc(sd, "N", nameid, 1, NULL);

return 0;

try this

if( (flag = pc_additem(sd, &it, 1, LOG_TYPE_SCRIPT)) )
{
clif_additem(sd, 0, 0, flag);
return 1;
}

clif_rental_time(sd->fd, nameid, seconds);
pc_inventory_rental_add(sd, seconds);

log_pick_pc(sd, LOG_TYPE_SCRIPT, nameid, 1, &it);

return 0;

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...