Jump to content
  • 0
Sign in to follow this  
PunkBuster

Problem with playercount

Question

screenAvalonRO3_Alpha059_zps64e6662d.jpg

 

I did the Endless Tower Fix from here:

 

https://github.com/HerculesWS/Hercules/commit/0876387f293ee633f7bfe12f8adf3f4a37d5b736

 

... and it broke my playercount function. Here's the relevant portion of my file:

 

	// guild	// (needs to go before clif_spawn() to show guild emblems correctly)	if(sd->status.guild_id)		guild->send_memberinfoshort(sd,1);	if(battle_config.pc_invincible_time > 0) {		pc->setinvincibletimer(sd,battle_config.pc_invincible_time);	}	if( map->list[sd->bl.m].users++ == 0 && battle_config.dynamic_mobs )		map->spawnmobs(sd->bl.m);		if( map->list[sd->bl.m].users++ == 0 && battle_config.dynamic_mobs )		map->spawnmobs(sd->bl.m);	if( map->list[sd->bl.m].instance_id >= 0 ) {	instance->list[map->list[sd->bl.m].instance_id].users++;	instance->check_idle(map->list[sd->bl.m].instance_id);	}	if( pc->has_permission(sd,PC_PERM_VIEW_HPMETER) ) {	map->list[sd->bl.m].hpmeter_visible++;	sd->state.hpmeter_visible = 1;	}  	if( !(sd->sc.option&OPTION_INVISIBLE) ) { // increment the number of pvp players on the map		map->list[sd->bl.m].users_pvp++;	}		sd->state.debug_remove_map = 0; // temporary state to track double remove_map's [FlavioJS]	// reset the callshop flag if the player changes map	sd->state.callshop = 0;	map->addblock(&sd->bl);	clif->spawn(&sd->bl);	// Party	// (needs to go after clif_spawn() to show hp bars correctly)	if(sd->status.party_id) {		party->send_movemap(sd);		clif->party_hp(sd); // Show hp after displacement [LuzZza]	}	if( sd->bg_id ) clif->bg_hp(sd); // BattleGround System		if(map->list[sd->bl.m].flag.pvp && !(sd->sc.option&OPTION_INVISIBLE)) {		if(!battle_config.pk_mode) { // remove pvp stuff for pk_mode [Valaris]			if (!map->list[sd->bl.m].flag.pvp_nocalcrank)				sd->pvp_timer = timer->add(timer->gettick()+200, pc->calc_pvprank_timer, sd->bl.id, 0);			sd->pvp_rank = 0;			sd->pvp_lastusers = 0;			sd->pvp_point = 5;			sd->pvp_won = 0;			sd->pvp_lost = 0;		}		clif->map_property(sd, MAPPROPERTY_FREEPVPZONE);	} else	// set flag, if it's a duel [LuzZza]	if(sd->duel_group)		clif->map_property(sd, MAPPROPERTY_FREEPVPZONE);	if (map->list[sd->bl.m].flag.gvg_dungeon)		clif->map_property(sd, MAPPROPERTY_FREEPVPZONE); //TODO: Figure out the real packet to send here.	if( map_flag_gvg2(sd->bl.m) )		clif->map_property(sd, MAPPROPERTY_AGITZONE);	// info about nearby objects	// must use foreachinarea (CIRCULAR_AREA interferes with foreachinrange)	map->foreachinarea(clif->getareachar, sd->bl.m, sd->bl.x-AREA_SIZE, sd->bl.y-AREA_SIZE, sd->bl.x+AREA_SIZE, sd->bl.y+AREA_SIZE, BL_ALL, sd);	// pet	if( sd->pd ) {		if( battle_config.pet_no_gvg && map_flag_gvg2(sd->bl.m) ) { //Return the pet to egg. [Skotlex]			clif->message(sd->fd, msg_txt(666));			pet->menu(sd, 3); //Option 3 is return to egg.		} else {			map->addblock(&sd->pd->bl);			clif->spawn(&sd->pd->bl);			clif->send_petdata(sd,sd->pd,0,0);			clif->send_petstatus(sd);//			skill->unit_move(&sd->pd->bl,timer->gettick(),1);		}	}	//homunculus [blackhole89]

My NPC script is not a problem. That NPC script is over 6 years old, always worked fine.

Share this post


Link to post
Share on other sites

2 answers to this question

Recommended Posts

  • 0

Offtopic:

Can you tell me where did you get dat Kafra? :awsm:

Edited by mleo1

Share this post


Link to post
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now
Sign in to follow this  

×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.