sctoff2xy(): New, factored out of sct_oninit()
Signed-off-by: Markus Armbruster <armbru@pond.sub.org>
This commit is contained in:
parent
f2b1ea3161
commit
0f3134fc15
3 changed files with 10 additions and 4 deletions
|
@ -65,6 +65,7 @@ extern coord strtoy(char *str, char **end);
|
||||||
extern coord xabs(struct natstr *np, coord relx);
|
extern coord xabs(struct natstr *np, coord relx);
|
||||||
extern coord yabs(struct natstr *np, coord rely);
|
extern coord yabs(struct natstr *np, coord rely);
|
||||||
extern int sctoff(coord x, coord y);
|
extern int sctoff(coord x, coord y);
|
||||||
|
extern void sctoff2xy(coord *, coord *, int);
|
||||||
extern coord xnorm(coord x);
|
extern coord xnorm(coord x);
|
||||||
extern coord ynorm(coord y);
|
extern coord ynorm(coord y);
|
||||||
extern int xyinrange(coord x, coord y, struct range *rp);
|
extern int xyinrange(coord x, coord y, struct range *rp);
|
||||||
|
|
|
@ -27,7 +27,7 @@
|
||||||
* filetable.c: Empire game data file descriptions.
|
* filetable.c: Empire game data file descriptions.
|
||||||
*
|
*
|
||||||
* Known contributors to this file:
|
* Known contributors to this file:
|
||||||
* Markus Armbruster, 2005-2012
|
* Markus Armbruster, 2005-2013
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include <config.h>
|
#include <config.h>
|
||||||
|
@ -281,8 +281,7 @@ sct_oninit(void *ptr)
|
||||||
{
|
{
|
||||||
struct sctstr *sp = (struct sctstr *)ptr;
|
struct sctstr *sp = (struct sctstr *)ptr;
|
||||||
|
|
||||||
sp->sct_y = sp->sct_uid * 2 / WORLD_X;
|
sctoff2xy(&sp->sct_x, &sp->sct_y, sp->sct_uid);
|
||||||
sp->sct_x = sp->sct_uid * 2 % WORLD_X + sp->sct_y % 2;
|
|
||||||
sp->sct_dist_x = sp->sct_x;
|
sp->sct_dist_x = sp->sct_x;
|
||||||
sp->sct_dist_y = sp->sct_y;
|
sp->sct_dist_y = sp->sct_y;
|
||||||
sp->sct_newtype = sp->sct_type = SCT_WATER;
|
sp->sct_newtype = sp->sct_type = SCT_WATER;
|
||||||
|
|
|
@ -28,7 +28,7 @@
|
||||||
*
|
*
|
||||||
* Known contributors to this file:
|
* Known contributors to this file:
|
||||||
* Dave Pare, 1989
|
* Dave Pare, 1989
|
||||||
* Markus Armbruster, 2004-2011
|
* Markus Armbruster, 2004-2013
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include <config.h>
|
#include <config.h>
|
||||||
|
@ -208,6 +208,12 @@ sctoff(coord x, coord y)
|
||||||
return XYOFFSET(XNORM(x), YNORM(y));
|
return XYOFFSET(XNORM(x), YNORM(y));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void sctoff2xy(coord *x, coord *y, int off)
|
||||||
|
{
|
||||||
|
*y = off * 2 / WORLD_X;
|
||||||
|
*x = off * 2 % WORLD_X + *y % 2;
|
||||||
|
}
|
||||||
|
|
||||||
coord
|
coord
|
||||||
xnorm(coord x)
|
xnorm(coord x)
|
||||||
{
|
{
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue