URL: <http://gna.org/patch/?4397>
Summary: player_invention_reachable() & root req reworked Project: Freeciv Submitted by: cazfi Submitted on: Fri 03 Jan 2014 06:11:30 AM EET Category: general Priority: 5 - Normal Status: Ready For Test Privacy: Public Assigned to: None Originator Email: Open/Closed: Open Discussion Lock: Any Planned Release: 2.6.0 _______________________________________________________ Details: - Have two functions instead of single player_invention_reachabe() 1) player_invention_reachable() is for checking if tech is reachable by researching recursive requirements. That's often what AI wants ("can I ever research tech allowing Musketeers?"), and what code affecting user tech goal should use. Uses of this function fix for TRUNK what patch #4395 fixes for stable branches + some AI problems (I'll make stable branches suitable patch about that too) 2) player_invention_gettable() tells if tech is something player may get immediately. For future use it supports two modes - allowing any reachable tech that has no root reqs or only techs immediately available from the tree. To avoid behavior changes, all callers currently allow all researchable techs (you can steal a tech so that it leaves a hole to your known techs tree). - Client's "Show all" button no longer toggles between immediately gettable and researchable techs, but researchable techs are always shown. If "Show all" is clicked, it truly shows all techs, even those in unreachable trees. _______________________________________________________ File Attachments: ------------------------------------------------------- Date: Fri 03 Jan 2014 06:11:30 AM EET Name: RootReqRewrite.patch.bz2 Size: 6kB By: cazfi <http://gna.org/patch/download.php?file_id=19617> _______________________________________________________ Reply to this item at: <http://gna.org/patch/?4397> _______________________________________________ Message sent via/by Gna! http://gna.org/ _______________________________________________ Freeciv-dev mailing list Freeciv-dev@gna.org https://mail.gna.org/listinfo/freeciv-dev