#pentagram@irc.freenode.net logs for 3 Jan 2004 (GMT)

Archive Today Yesterday Tomorrow
Pentagram homepage


[00:19:58] <-- watt has left #pentagram ()
[00:37:10] --> Kirben has joined #pentagram
[00:37:10] --- ChanServ gives channel operator status to Kirben
[00:57:44] --> watt has joined #pentagram
[01:03:41] <-- wjp has left IRC ("Zzzz...")
[04:31:24] <-- shinji-kun has left IRC (""Baka!" - Asuka-chan")
[05:45:08] --> Knight has joined #pentagram
[05:50:52] <-- Knight has left IRC (" HydraIRC -> http://www.hydrairc.com <- \o/")
[08:50:48] --> SB-X has joined #pentagram
[09:56:40] --> sbx has joined #pentagram
[09:56:54] <-- SB-X has left IRC (Read error: 104 (Connection reset by peer))
[11:08:52] --> EsBee-Eks has joined #pentagram
[11:09:00] <-- sbx has left IRC (Read error: 104 (Connection reset by peer))
[12:49:11] <-- Kirben has left IRC (Read error: 104 (Connection reset by peer))
[13:04:33] --> Kirben has joined #pentagram
[13:04:33] --- ChanServ gives channel operator status to Kirben
[13:33:46] --> Colourless has joined #Pentagram
[13:33:46] --- ChanServ gives channel operator status to Colourless
[13:34:05] --> wjp has joined #pentagram
[13:34:05] --- ChanServ gives channel operator status to wjp
[13:34:12] <Colourless> hi
[13:34:33] <Colourless> hi
[13:34:34] <wjp> hi
[13:38:26] <Colourless> any objections is if change Item::parent from a Container* to an objid?
[13:39:59] <wjp> no
[13:41:46] <Colourless> good :-)
[13:42:18] <Colourless> 'we' sort of broke our own rules with that one. There isn't really a reason why we are using a pointer for that
[13:42:58] <Colourless> so things aren't too ugly i'm adding a getParentAsContainer() method
[13:43:25] <Colourless> which gets the world instance then does the item lookup
[13:43:59] * wjp nods
[13:45:02] <Colourless> one 'issue' is getParent() which will not return an objid can return a value, BUT getParentAsContainer() can fail, since a dynamic cast is done
[13:45:11] <Colourless> s/not/now/
[13:46:04] <wjp> make it an assertion that the result is non-null if the objid is non-null
[13:46:59] <Colourless> At the moment i've got it just printing an error message to perr, but an assert should be ok
[13:47:13] <Colourless> since assert are debug mode only
[13:48:12] <Colourless> the reason why i'm doing this is I was concerned about an object pointer being used for ethereal items
[13:48:39] * Colourless thinks for a second
[13:48:54] <wjp> we'll need strict rules about the exact meaning of the equipped/contained flags and the parent field
[13:48:56] <Colourless> the ethereal void is actually saved correct?
[13:49:09] <wjp> it should be, yes
[13:49:22] * Colourless checked and it is
[13:51:08] <Colourless> uh
[13:51:15] * Colourless will be breaking savegames
[13:51:21] <wjp> oh no :-)
[13:51:29] <Colourless> parent isn't saved item
[13:51:36] <Colourless> it is regenerated by the container loading
[13:51:38] <wjp> yeah, it's implicit
[13:51:52] <Colourless> s/saved item/saved by item/
[13:52:05] <Colourless> oh well
[13:53:28] <Colourless> ok, if the item itself remembers it's parent, do we need to bother with a item->setParent(getObjId()); line in Container::loadData()?
[13:54:44] <wjp> no
[13:55:00] <Colourless> also going to make it so ethereal items are always saved
[13:55:30] <Colourless> ethereal & contained item currently wont be saved
[13:55:50] <Colourless> not that current pentagram can ever get in that state :-)
[13:55:57] <Colourless> mine can though
[13:57:36] <Colourless> oh no. I'm going to have to update the savegame specs too! :-)
[13:59:43] <Colourless> hmm. You know, is there a reason why we for example make containers use a list of Item* rather than objids?
[14:00:03] <Colourless> i'm guessing it's a thing about what is easier
[14:00:29] <Colourless> similar thing with gumps too i guess
[14:00:33] * wjp nods
[14:00:48] <wjp> parent/child relations are 'used' a lot
[14:02:28] <Colourless> yeah i guess. Makes code much cleaner too
[14:02:50] <Colourless> storing parent as an objid is one thing, storing children as objids makes thing messy
[14:32:11] --> Fingolfin has joined #pentagram
[14:32:11] --- ChanServ gives channel operator status to Fingolfin
[15:21:44] <Colourless> going
[15:21:47] <Colourless> cyq
[15:21:48] <-- Colourless has left IRC ("casts invisibility")
[16:01:41] <-- Kirben has left IRC (Read error: 110 (Connection timed out))
[18:52:09] --> hofi has joined #pentagram
[19:26:53] --> Knight has joined #pentagram
[20:38:06] <watt> hi all
[21:19:11] <-- Knight has left IRC (" HydraIRC -> http://www.hydrairc.com <- IRC has never been so cool")
[21:19:22] <wjp> hi watt
[21:36:01] <watt> It's occured to me that ODataSources might have use of a setPos method.
[21:38:43] <watt> Found some serious "YIKES! how do I change that?" in the unpackshp in which setPos would have been useful
[21:39:36] <wjp> not all ODataSources support seeking, though
[21:52:10] <watt> ah... I see.
[21:52:30] <-- hofi has left #pentagram ("Client exiting")
[21:54:09] <wjp> but if you use a OFileDataSource you should be able to use seek
[21:55:13] <watt> currently tried a OBufferDataSource since the original functions used a char *
[22:34:45] --- EsBee-Eks is now known as SB-X
[22:54:31] <-- SB-X has left IRC ("...")
[23:53:14] <-- watt has left IRC (Excess Flood)
[23:53:15] --> watt has joined #pentagram