Skip to main content
GameDev.net gamedev.net
🔒 Locked

Parsing expression with functions -- AS vs boost

Started by paul424 Apr 22, 2013 at 9:45 AM 1 replies 2.4k views
Original Post
paul424
paul424

Thing is , I started writing some fancy functions for map modification, which would be called by various Game parts, especially the console and AS :

TileContainer* create(int x , int y , Tile::TileType tt );

TileContainer* copy(TileContainer* tc1 , TileContainer* tc2 );

TileContainer* embed(TileContainer* tc1 , TileContainer* tc2 );

TileContainer* rotate90(TileContainer* tc );

TileContainer* reflectX(TileContainer* tc);

TileContainer* reflectY(TileContainer* tc);

TileContainer* tilePermute(TileContainer* t, int x , int y , Tile::TileType tt );

TileContainer* clone(TileContainer* tc );

TileContainer* tileReplace( TileContainer* tc , Tile::TileType tt1, Tile::TileType tt2 );

That's not only such set of functions , but it illustrates well the problem : How to compute any expression like f(g(h(4 + 5 ) ) ) for which some of f,g,h ... comes from the binary some from AS ? How do I extend that so I have mini-language at Console ? The first concrete question is : How do I get abstract tree of such expr ? Do I use the AS or use some 3rd lib like boost and there get parser/ lexer for it ?

WitchLord
WitchLord
In addition to that I recommend that you take a look at the 'console' sample in the AngelScript SDK. It shows one way that you may implement an in-game console with support for executing expressions, etc.
AngelCode.com - game development and more - Reference DB - game developer references
AngelScript - free scripting library - BMFont - free bitmap font generator - <a href="http://www.angelcode.com/tower" rel

Topic Locked

This topic has been locked by a moderator. New replies are not allowed.

Sign in to reply to this topic.