From 0083c51b3bb9077ad581f798ef2bb7e33fe0e14a Mon Sep 17 00:00:00 2001 From: ac-stef Date: Thu, 28 Jul 2016 00:35:43 +0200 Subject: [PATCH] add menus to assign licenses to maps --- config/menus.cfg | 1 + config/menus_edit.cfg | 3 + config/menus_licenses.cfg | 141 ++++++++++++++++++++++++++++++++++++++ 3 files changed, 145 insertions(+) create mode 100644 config/menus_licenses.cfg diff --git a/config/menus.cfg b/config/menus.cfg index f195c3d5..7e954c65 100644 --- a/config/menus.cfg +++ b/config/menus.cfg @@ -121,6 +121,7 @@ const savequit [ if $askquit [ showmenu quit ] quit ] // Create additional menus... exec config/menus_bot.cfg exec config/menus_edit.cfg +exec config/menus_licenses.cfg exec config/menus_settings.cfg exec config/menus_multiplayer.cfg exec config/menus_voicecom.cfg diff --git a/config/menus_edit.cfg b/config/menus_edit.cfg index db66ca16..f61a3e93 100644 --- a/config/menus_edit.cfg +++ b/config/menus_edit.cfg @@ -152,6 +152,9 @@ menuitem "Newmap (128x128 cubes - recommended)" [ newmap 7 ] menuitem "Newmap (256x256 cubes)" [ newmap 8 ] menuitem "Increase mapsize (2x)" [ mapenlarge; echo The map size has been increased by 2. However, the new space is solid. To utilize it, you will need to turn it into non-solid space, by selecting it and pressing G. ] menuitem "Edit map message" editmapmsg +menuitem "Select map license" [ showmenu "Select map license" ] +menuitem "Edit map license comment" [ editsvar mapinfo_comment ] +menuitem "Show map info" [ showmenu "Show map info" ] // FIXME: move to more appropriate menu menuitem "Change waterlevel" [ saycommand [/waterlevel ] ] menuitem "Change watercolour" [ showmenu [Water colour] ] menuitem "Generate a random watercolour" genwc diff --git a/config/menus_licenses.cfg b/config/menus_licenses.cfg new file mode 100644 index 00000000..ca844374 --- /dev/null +++ b/config/menus_licenses.cfg @@ -0,0 +1,141 @@ +// menus_licenses.cfg +// +// assortment of licenses for maps +// + +tempalias __maplicense_fullname_cc-by-nc-nd-3.0 "Creative Commons Attribution-Noncommercial-No Derivative Works 3.0 Unported" +tempalias __maplicense_menutext_cc-by-nc-nd-3.0 [ + menuitem "\f2Creative Commons Attribution-Noncommercial-No Derivative Works 3.0 Unported" -1 + menuitem "\t\f1http://creativecommons.org/licenses/by-nc-nd/3.0/" -1 + menuitem "" -1 + menuitem "You are free to share, copy, distribute and transmit the work, under the following conditions:" -1 + menuitem " * \fs\f2Attribution\fr: You must attribute the work in the manner specified by the author or licensor" -1 + menuitem " (but not in any way that suggests that they endorse you or your use of the work)." -1 + menuitem " * \fs\f2Noncommercial\fr: You may not use this work for commercial purposes." -1 + menuitem " * \fs\f2No Derivative Works\fr: You may not alter, transform, or build upon this work." -1 + menuitem "With the understanding that:" -1 + menuitem " * \fs\f2Waiver\fr: Any of the above conditions can be waived if you get permission from the copyright holder." -1 + menuitem " * \fs\f2Public Domain\fr: Where the work or any of its elements is in the public domain under applicable law," -1 + menuitem " that status is in no way affected by the license." -1 + menuitem " * \fs\f2Other Rights\fr: In no way are any of the following rights affected by the license:" -1 + menuitem " o Your fair dealing or fair use rights, or other applicable copyright exceptions and limitations;" -1 + menuitem " o The author's moral rights;" -1 + menuitem " o Rights other persons may have either in the work itself or in how the work is used," -1 + menuitem " such as publicity or privacy rights." -1 + menuitem " * \fs\f2Notice\fr: For any reuse or distribution, you must make clear to others the license terms of this work." -1 + menuitem "" -1 +] + +tempalias __maplicense_fullname_cc-by-nc-sa-3.0 "Creative Commons Attribution-Noncommercial-ShareAlike 3.0 Unported" +tempalias __maplicense_menutext_cc-by-nc-sa-3.0 [ + menuitem "\f2Creative Commons Attribution-Noncommercial-ShareAlike 3.0 Unported" -1 + menuitem "\t\f1http://creativecommons.org/licenses/by-nc-sa/3.0/" -1 + menuitem "" -1 + menuitem "You are free to share, copy, distribute and transmit, and to remix and adapt the work under the following conditions:" -1 + menuitem " * \fs\f2Attribution\fr: You must attribute the work in the manner specified by the author or licensor" -1 + menuitem " (but not in any way that suggests that they endorse you or your use of the work)." -1 + menuitem " * \fs\f2Noncommercial\fr: You may not use this work for commercial purposes." -1 + menuitem " * \fs\f2Share Alike\fr: If you alter, transform, or build upon this work, you may distribute the resulting" -1 + menuitem " work only under the same or similar license to this one." -1 + menuitem "With the understanding that:" -1 + menuitem " * \fs\f2Waiver\fr: Any of the above conditions can be waived if you get permission from the copyright holder." -1 + menuitem " * \fs\f2Public Domain\fr: Where the work or any of its elements is in the public domain under applicable law," -1 + menuitem " that status is in no way affected by the license." -1 + menuitem " * \fs\f2Other Rights\fr: In no way are any of the following rights affected by the license:" -1 + menuitem " o Your fair dealing or fair use rights, or other applicable copyright exceptions and limitations;" -1 + menuitem " o The author's moral rights;" -1 + menuitem " o Rights other persons may have either in the work itself or in how the work is used," -1 + menuitem " such as publicity or privacy rights." -1 + menuitem "" -1 +] + +tempalias __maplicense_fullname_public-domain "Public Domain" +tempalias __maplicense_menutext_public-domain [ + menuitem "\f2Public Domain" -1 + menuitem "" -1 + menuitem "The author of the map has dedicated it to the public domain by waiving all of his or her rights to the work." -1 + menuitem "" -1 + menuitem "You can copy, modify, distribute and use the map, even for commercial purposes, all without asking permission." -1 + menuitem "" -1 + menuitem "When using or editing the map, you should not imply endorsement by the author." -1 + menuitem "" -1 +] + +tempalias __maplicense_fullname_ac-default "AssaultCube Package License" +tempalias __maplicense_menutext_ac-default [ + menuitem "\f2AssaultCube Package License" -1 + menuitem "" -1 + menuitem "This map copyrighted and is part of the AssaultCube package." -1 + menuitem "" -1 + menuitem "AssaultCube is FREEWARE. By downloading the AssaultCube package(s) you agreed that you may freely" -1 + menuitem "use the AssaultCube package(s) UNMODIFIED." -1 + menuitem "\f4See the full license text at \f1http://assault.cubers.net/docs/license.html" -1 + menuitem "" -1 + menuitem " * DO NOT MODIFY: You are not allowed to change, remix, adapt or alter the map in any way." -1 + menuitem " * DO NOT DISTRIBUTE: This map can only be distributed within an unmodified AssaultCube package." -1 + menuitem " * NO COMMERCIAL USE of this map." -1 + menuitem " * Do not claim, that you created this map." -1 + menuitem " * You must not modify this map for the purposes of gaining an unfair advantage over others and you must not" -1 + menuitem " redistribute these modifications in any form, including, but not limited to videos, text and software." -1 + menuitem "" -1 + menuitem "To use this map for anything not allowed in this license, EXPLICIT permission by the author is required." -1 + menuitem "" -1 + menuitem "This license is intended for maps, that are part of the AssaultCube package - so-called \"official maps\"." -1 + menuitem "If applied to a custom map, the \"DO NOT DISTRIBUTE\" clause is to be read as: DO NOT DISTRIBUTE outside the" -1 + menuitem "AssaultCube ecosystem, which consists of the game servers listed by an unmodified game client, the main website at" -1 + menuitem "http://cubers.net, the custom media websites http://ac-akimbo.net and http://quadropolis.us and the" -1 + menuitem "media package servers used by an unmodified game client." -1 + menuitem "" -1 +] + +tempalias __maplicense_fullname_custom "Custom License" +tempalias __maplicense_menutext_custom [ + menuitem "\f2Custom License" -1 + menuitem "" -1 + menuitem "This map uses a custom license. See the config file for more details." -1 + menuitem "" -1 + menuitem "If there is no separate config file, please check for an embedded config file." -1 + menuitem "" -1 +] + +tempalias __maplicense_list [cc-by-nc-nd-3.0 cc-by-nc-sa-3.0 public-domain ac-default custom] + +newmenu "Select map license" +menuinit [ + tempalias __viewlicense $mapinfo_license + __rebuildmaplicensemenu +] +tempalias __rebuildmaplicensemenu [ + resetcurmenu + menuitem (concatword "current license tag: \"" $mapinfo_license "\"") [ editsvar mapinfo_license ] + menuitem (concatword "current license comment: \"" $mapinfo_comment "\"") [ editsvar mapinfo_comment ] + menuitem "" -1 + looplist $__maplicense_list n [ + menuitem (concat (getalias (concatword __maplicense_fullname_ $n)) (if (strcmp $n $mapinfo_license) [result "\f1(current)"] [result ""])) (concat mapinfo_license $n) (concat tempalias __viewlicense $n ";" __rebuildmaplicensemenu) + ] + push n (findlist $__maplicense_list $__viewlicense) + if (>= $n 0) [ + menuitem "" -1 + menuitem "" -1 + (concatword __maplicense_menutext_ $__viewlicense) + ] + menuselection (curmenu) (+ 3 (pop n)) +] + +newmenu "Show map info" +menuinit [ + resetcurmenu + menuitem (concatword "Current map: \f1" (curmap)) -1 + if (strlen $mapmsg) [ + menuitem $mapmsg -1 + ] + if (< (findlist $__maplicense_list $mapinfo_license) 0) [ + menuitem (concatword "map license tag: \"" $mapinfo_license "\"") -1 + ] [ + menuitem (getalias (concatword __maplicense_fullname_ $mapinfo_license)) (concatword "__maplicense_menutext_" $mapinfo_license " ; result -1") + ] + if (strlen $mapinfo_comment) [ + menuitem $mapinfo_comment -1 + ] +] +