Jump to content
  • 0

How do I enable/disable vending in certain maps & coordinates?


Question

6 answers to this question

Recommended Posts

Posted

Create a script that uses OnInit to trigger a series of setcell that turn cell_novending ON for that area.

*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. The 'flag' can be 0 or 1 (0:clear flag, 1:set flag).
The 'type' defines which flag to modify. Possible options include cell_walkable,
cell_shootable, cell_basilica. For a full list, see const.txt.

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 allowed
to proceed until all barricades are destroyed. This script would place and
remove a nonwalkable row of cells after the barricade mobs.

If you want to disable vending on the whole map, use the novending mapflag

prontera	mapflag	novending

Posted

you mean....

OnInit:

setcell "prontera",146,159,146,148,cell_novending,1;

end;

I want to enable vending skill from 146,159 to 146,148 in prontera

where do the script has to be? I mean, in trunkconfmapflag ?

Posted

Turn 'cell_novending' ON on the whole prontera map.

Then turn cell_novending off on that area to allow vending there.

-	script	prontera_vending	-1,{
OnInit:
setcell "prontera", 0,0,     400,400, cell_novending,1;
setcell "prontera", 146,159, 146,148, cell_novending,0;
end;
}

and this wiki page explains Adding_a_Script

  • Upvote 1
Posted

thank you brian, now the scripting is working, I see that trunk/doc is really helpful, I just had to add npc: conf/mapflag/prontera_vending.txt in script_mapflags and of course, the script:)

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...