java
New member
- Messages
- 22
- Points
- 0
- Emulator
- Hercules
Hi, i was left from RO long time ago and now i want to run my offline server, but several code is outdate, can someone fix code for me
here is new herc:
for (int i = 0; i < MAX_PARTY; i++) {
if ((p_sd = p->data.sd) == NULL || p_sd->status.party_id != p_id || pc_isdead(p_sd))
continue;
if (p->party.member.online == 0 || (!include_leader && p->party.member.leader == 1))
continue;
if (m_name_from != NULL && strcmp(m_name_from, map->list[p_sd->bl.m].name) != 0)
continue;
if (!ignore_mapflags) {
if (((type == 0 || type > 2) && map->list[p_sd->bl.m].flag.nowarp == 1) ||
(type > 0 && map->list[p_sd->bl.m].flag.noreturn == 1))
continue;
}
if (type == 1) {
map_index = p_sd->status.save_point.map;
x = p_sd->status.save_point.x;
y = p_sd->status.save_point.y;
}
if (type > 0)
if(pc_isdead(p_sd)) status->revive(&p_sd->bl, 1, 1); //and this line is what i want to add but seems not compatible
pc->setpos(p_sd, map_index, x, y, CLR_TELEPORT);
//else
//pc->randomwarp(p_sd, CLR_TELEPORT); // this is original updated from herc
}
script_pushint(st, 1);
return true;
}
and this is old herc
for (i = 0; i < MAX_PARTY; i++) {
if( !(pl_sd = p->data.sd) || pl_sd->status.party_id != p_id )
continue;
if( str2 && strcmp(str2, map->list[pl_sd->bl.m].name) != 0 )
continue;
if( pc_isdead(pl_sd) )
continue;
switch( type )
{
case 0: // Random
if(!map->list[pl_sd->bl.m].flag.nowarp)
pc->randomwarp(pl_sd,CLR_TELEPORT);
break;
case 1: // SavePointAll
if(!map->list[pl_sd->bl.m].flag.noreturn)
pc->setpos(pl_sd,pl_sd->status.save_point.map,pl_sd->status.save_point.x,pl_sd->status.save_point.y,CLR_TELEPORT);
break;
case 2: // SavePoint
if(!map->list[pl_sd->bl.m].flag.noreturn)
pc->setpos(pl_sd,sd->status.save_point.map,sd->status.save_point.x,sd->status.save_point.y,CLR_TELEPORT);
break;
case 3: // Leader
case 4: // m,x,y
//if(!map->list[pl_sd->bl.m].flag.noreturn && !map->list[pl_sd->bl.m].flag.nowarp)
if(pc_isdead(pl_sd)) status->revive(&pl_sd->bl, 1, 1); //i want to make this line compatible to newest herc
pc->setpos(pl_sd,map_index,x,y,CLR_TELEPORT);
break;
}
}
return true;
}
any help is appreciated
here is new herc:
for (int i = 0; i < MAX_PARTY; i++) {
if ((p_sd = p->data.sd) == NULL || p_sd->status.party_id != p_id || pc_isdead(p_sd))
continue;
if (p->party.member.online == 0 || (!include_leader && p->party.member.leader == 1))
continue;
if (m_name_from != NULL && strcmp(m_name_from, map->list[p_sd->bl.m].name) != 0)
continue;
if (!ignore_mapflags) {
if (((type == 0 || type > 2) && map->list[p_sd->bl.m].flag.nowarp == 1) ||
(type > 0 && map->list[p_sd->bl.m].flag.noreturn == 1))
continue;
}
if (type == 1) {
map_index = p_sd->status.save_point.map;
x = p_sd->status.save_point.x;
y = p_sd->status.save_point.y;
}
if (type > 0)
if(pc_isdead(p_sd)) status->revive(&p_sd->bl, 1, 1); //and this line is what i want to add but seems not compatible
pc->setpos(p_sd, map_index, x, y, CLR_TELEPORT);
//else
//pc->randomwarp(p_sd, CLR_TELEPORT); // this is original updated from herc
}
script_pushint(st, 1);
return true;
}
and this is old herc
for (i = 0; i < MAX_PARTY; i++) {
if( !(pl_sd = p->data.sd) || pl_sd->status.party_id != p_id )
continue;
if( str2 && strcmp(str2, map->list[pl_sd->bl.m].name) != 0 )
continue;
if( pc_isdead(pl_sd) )
continue;
switch( type )
{
case 0: // Random
if(!map->list[pl_sd->bl.m].flag.nowarp)
pc->randomwarp(pl_sd,CLR_TELEPORT);
break;
case 1: // SavePointAll
if(!map->list[pl_sd->bl.m].flag.noreturn)
pc->setpos(pl_sd,pl_sd->status.save_point.map,pl_sd->status.save_point.x,pl_sd->status.save_point.y,CLR_TELEPORT);
break;
case 2: // SavePoint
if(!map->list[pl_sd->bl.m].flag.noreturn)
pc->setpos(pl_sd,sd->status.save_point.map,sd->status.save_point.x,sd->status.save_point.y,CLR_TELEPORT);
break;
case 3: // Leader
case 4: // m,x,y
//if(!map->list[pl_sd->bl.m].flag.noreturn && !map->list[pl_sd->bl.m].flag.nowarp)
if(pc_isdead(pl_sd)) status->revive(&pl_sd->bl, 1, 1); //i want to make this line compatible to newest herc
pc->setpos(pl_sd,map_index,x,y,CLR_TELEPORT);
break;
}
}
return true;
}
any help is appreciated
Last edited by a moderator: