ID:178639
Apr 22 2002, 3:45 am
|
|
I'm having touble making my monsters multi-tiled. All that I want is a monster that can be larger than the 32x32. Everything that I have looked at deals with moving, and I don't need that, since my monsters don't move at all. Any help would greatly be appreciated.
|
Apr 22 2002, 3:55 am
|
|
Then just ignore the moving aspect and examine the part of the code that creates the multitile mob.
|
Is the trouble with graphics or code?
If it's code then one way to tackle it would be to override the mobs New() and Del() procs to build and destroy it: mob head var/body/bottum New() ..() bottum = new /mob/body(get_step(src,SOUTH)) Del() del(bottum) ..() body If it will be placed randomly then you'll want to make sure that the turf below the head exists. In order to create it just create the head mob and it will automatically create the body. That will make it like this: H B If you want different configurations just change the get_step(src,SOUTH) to whatever direction you need to create each body part. I can't think of a better way to go about doing this... |
In response to English
|
|
Okay here is the code, but I keep getting a run time error. Any body know why????
------ raven icon = 'raven3.dmi' icon_state = "0,0" expreward = 6 gold = 3 str = 10 def = 6 agl = 6 hp = 9 mp = 0 var up11 upup11 right11 upright11 upupright11 New() ..() up11 = new /mob/raven/up1(get_step(src,NORTH)) upup11 = new /mob/raven/upup1(get_step(src,NORTH)) right11 = new /mob/raven/right1(get_step(src,EAST)) upright11 = new /mob/raven/upright1(get_step(src,EAST)) upupright11 = new /mob/raven/upupright1(get_step(src,EAST)) Del() del(up11) del(upup11) del(right11) del(upright11) del(upupright11) ..() up1 icon_state = "0,1" upup1 icon_state = "0,2" right1 icon_state = "1,0" upright1 icon_state = "1,1" upupright1 icon_state = "1,2" ------ runtime error: Maximum recursion level reached (perhaps there is an infinite loop) To avoid this safety check, set world.loop_checks=0. proc name: usr: the up1 (/mob/raven/up1) src: the up1 (/mob/raven/up1) call stack: the up1 (/mob/raven/up1): () the up1 (/mob/raven/up1): New(the turf (7,199,3) (/turf)) the up1 (/mob/raven/up1): New(the turf (7,198,3) (/turf)) the up1 (/mob/raven/up1): New(the turf (7,197,3) (/turf)) the up1 (/mob/raven/up1): New(the turf (7,196,3) (/turf)) the up1 (/mob/raven/up1): New(the turf (7,195,3) (/turf)) the up1 (/mob/raven/up1): New(the turf (7,194,3) (/turf)) the up1 (/mob/raven/up1): New(the turf (7,193,3) (/turf)) the up1 (/mob/raven/up1): New(the turf (7,192,3) (/turf)) the up1 (/mob/raven/up1): New(the turf (7,191,3) (/turf)) ... the up1 (/mob/raven/up1): New(the battlearea (7,17,3) (/turf/battlearea)) the up1 (/mob/raven/up1): New(the battlearena (7,15,3) (/turf/battlearena)) the up1 (/mob/raven/up1): New(the battlearena (7,13,3) (/turf/battlearena)) the up1 (/mob/raven/up1): New(the turf (7,11,3) (/turf)) the up1 (/mob/raven/up1): New(the turf (7,9,3) (/turf)) the up1 (/mob/raven/up1): New(the turf (7,7,3) (/turf)) the raven (/mob/raven): New(the turf (7,5,3) (/turf)) the battlebrush (22,182,1) (/turf/battlebrush): Entered(Rubius (/mob/god), the battlebrush (21,182,1) (/turf/battlebrush)) Rubius (/client): Move(the battlebrush (22,182,1) (/turf/battlebrush), 4) runtime error: Maximum recursion level reached (perhaps there is an infinite loop) To avoid this safety check, set world.loop_checks=0. proc name: New (/mob/raven/New) usr: the up1 (/mob/raven/up1) src: the up1 (/mob/raven/up1) call stack: the up1 (/mob/raven/up1): New(the turf (7,200,3) (/turf)) the up1 (/mob/raven/up1): New(the turf (7,199,3) (/turf)) the up1 (/mob/raven/up1): New(the turf (7,198,3) (/turf)) the up1 (/mob/raven/up1): New(the turf (7,197,3) (/turf)) the up1 (/mob/raven/up1): New(the turf (7,196,3) (/turf)) the up1 (/mob/raven/up1): New(the turf (7,195,3) (/turf)) the up1 (/mob/raven/up1): New(the turf (7,194,3) (/turf)) the up1 (/mob/raven/up1): New(the turf (7,193,3) (/turf)) the up1 (/mob/raven/up1): New(the turf (7,192,3) (/turf)) the up1 (/mob/raven/up1): New(the turf (7,191,3) (/turf)) ... the up1 (/mob/raven/up1): New(the battlearea (7,17,3) (/turf/battlearea)) the up1 (/mob/raven/up1): New(the battlearena (7,15,3) (/turf/battlearena)) the up1 (/mob/raven/up1): New(the battlearena (7,13,3) (/turf/battlearena)) the up1 (/mob/raven/up1): New(the turf (7,11,3) (/turf)) the up1 (/mob/raven/up1): New(the turf (7,9,3) (/turf)) the up1 (/mob/raven/up1): New(the turf (7,7,3) (/turf)) the raven (/mob/raven): New(the turf (7,5,3) (/turf)) the battlebrush (22,182,1) (/turf/battlebrush): Entered(Rubius (/mob/god), the battlebrush (21,182,1) (/turf/battlebrush)) Rubius (/client): Move(the battlebrush (22,182,1) (/turf/battlebrush), 4) |
In response to Rubius
|
|
That is happening because up11, upup11 and all the rest are of the same type as the base obj, When you create the first raven, it get's to up11 = new() and creates another new raven, which has it's own up11 and tries to create that, it gets stuck in an infinate loop.
Try using a basic mob (or at the least, a differnt sort of mob) for all the pieces: New() ..() up11 = new /mob/up1(get_step(src,NORTH)) upup11 = new /mob/upup1(get_step(up11,NORTH)) right11 = new /mob/right1(get_step(src,EAST)) upright11 = new /mob/upright1(get_step(up11,EAST)) upupright11 = new /mob/upupright1(get_step(upup11,EAST)) |
I could have sworn i replied to this..
I have a couple of examples you could use: http://www.planetrcet.w3site.com -Rcet |
In response to Shadowdarke
|
|
Okay, one real quick (and probably stupid) question. How can I get it to create the tile two squares above the base point??? Thank you very much.
|
In response to Rubius
|
|
Never mind, I figured out a fix for it. Thanks for all the help, though!!!!
|