cell_basilica

You could add multiple setcells for a perimeter to accommodate your needs. I haven't tried this, but setting that particular cell/area to be walkable after setting the enclosing area to be unwalkable might work.

 
to be clear in if you only have time to read script_command.txt

*setcell "<map name>",<x1>,<y1>,<x2>,<y2>,<type>,<flag>;Each map cell has several 'flags' that specify the properties of that cell.These include terrain properties (walkability, shootability, presence of water), skills (basilica, land protector, ...) and other (NPC nearby, no vending, ...).Each of these can be 'on' or 'off'. Together they define a cell's behavior.This command lets you alter these flags for all map cells in the specified (x1,y1)-(x2,y2) rectangle. 'type' defines which flag to modify. Possible options include cell_walkable,cell_shootable, cell_basilica. For a full list, see const.txt.'flag' can be 0 or 1 (0:clear flag, 1:set flag). Example: setcell "arena",0,0,300,300,cell_basilica,1; setcell "arena",140,140,160,160,cell_basilica,0; setcell "arena",135,135,165,165,cell_walkable,0; setcell "arena",140,140,160,160,cell_walkable,1;This will add a makeshift ring into the center of the map. The ring will be surrounded by a 5-cell wide 'gap' to prevent interference from outside, and the rest of the map will be marked as 'basilica', preventing observers from casting any offensive skills or fighting among themselves. Note that the wall will not be shown nor known client-side, which may cause movement problems.Another example:OnBarricadeDeploy: setcell "schg_cas05",114,51,125,51,cell_walkable,0; end;OnBarricadeBreak: setcell "schg_cas05",114,51,125,51,cell_walkable,1; end;This could be a part of the WoE:SE script, where attackers are not allowedto proceed until all barricades are destroyed. This script would place andremove a nonwalkable row of cells after the barricade mobs.
meaning it is available
default_ani_meow.gif


 
As I remember , cell_basilica no longer functions  since 13106 , instead of it  was  sc_basilica

you can add it back by manual

battle.c

inside function  int battle_check_target

find
 

//Alliance state takes precedence over enemy one. else if( state&BCT_ENEMY && strip_enemy && state&(BCT_SELF|BCT_PARTY|BCT_GUILD) ) state&=~BCT_ENEMY;


and add after
 

Code:
	if ( map->getcell( src->m, src->x, src->y, CELL_CHKBASILICA ) || map->getcell( target->m, target->x, target->y, CELL_CHKBASILICA ) || map->getcell( s_bl->m, s_bl->x, s_bl->y, CELL_CHKBASILICA ) || map->getcell( t_bl->m, t_bl->x, t_bl->y, CELL_CHKBASILICA ) )		state &= ~BCT_ENEMY;
 
Last edited by a moderator:
As I remember , cell_basilica no longer functions  since 13106 , instead of it  was  sc_basilica

you can add it back by manual

battle.c

inside function  int battle_check_target

find

//Alliance state takes precedence over enemy one. else if( state&BCT_ENEMY && strip_enemy && state&(BCT_SELF|BCT_PARTY|BCT_GUILD) ) state&=~BCT_ENEMY;


and add after

if ( map->getcell( src->m, src->x, src->y, CELL_CHKBASILICA ) || map->getcell( target->m, target->x, target->y, CELL_CHKBASILICA ) || map->getcell( s_bl->m, s_bl->x, s_bl->y, CELL_CHKBASILICA ) || map->getcell( t_bl->m, t_bl->x, t_bl->y, CELL_CHKBASILICA ) ) state &= ~BCT_ENEMY;
thought so.. why is it removed? anyways thanks for this.

 
^ don't think so but havnt try it yet, since it is still on script_commands.txt

and found in some script like npc/battleground/flavius/flavius02.txt 

bat_b02,1,4,3 script cell#bat_b02_a CLEAR_NPC,{OnRed: setcell "bat_b02",62,149,60,151,cell_basilica,1; setcell "bat_b02",62,149,60,151,cell_walkable,0; 

and in src/map/map.c 

case CELL_BASILICA: map->list[m].cell[j].basilica = flag; break; case CELL_LANDPROTECTOR: map->list[m].cell[j].landprotector = flag; break;

I assumed that it still exist.. 
default_hmm.gif


 
i think it still exist but i doesn't function well? tried it like many times and i've also read some topics that it has been removed and Angelmelody just confirms it.

 
Back
Top