|
|
@@ -27,6 +27,8 @@
|
|
|
|
|
|
#include "gui.h"
|
|
|
|
|
|
+#define BANNER_FLAG_DUPLICATE BV01
|
|
|
+
|
|
|
void banner_create(struct session *ses, char *name, char *arg)
|
|
|
{
|
|
|
update_node_list(gtd->banner_list, name, "", "", "");
|
|
|
@@ -47,6 +49,16 @@ void banner_desc(struct session *ses, char *name, char *arg, char *arg1)
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+void banner_flag(struct session *ses, char *name, unsigned int flag)
|
|
|
+{
|
|
|
+ struct listnode *node = search_node_list(gtd->banner_list, name);
|
|
|
+
|
|
|
+ if (node)
|
|
|
+ {
|
|
|
+ node->shots = flag;
|
|
|
+ }
|
|
|
+}
|
|
|
+
|
|
|
void banner_website(struct session *ses, char *name, char *arg, char *arg1)
|
|
|
{
|
|
|
struct listnode *node;
|
|
|
@@ -85,7 +97,7 @@ void banner_expires(struct session *ses, char *name, char *arg, char *arg1)
|
|
|
|
|
|
if (node)
|
|
|
{
|
|
|
- node->val64 = UMAX(0, (atoi(arg1) - 1970) * 31556926);
|
|
|
+ node->val64 = UMAX(0, (atoi(arg1) - 1969) * 31556926);
|
|
|
}
|
|
|
}
|
|
|
|
|
|
@@ -104,10 +116,28 @@ void banner_init(struct session *ses, char *arg1)
|
|
|
"\n"
|
|
|
" -- Yahoo! Wild Web Rides", arg1);
|
|
|
|
|
|
- banner_website(ses, "Lost Souls", "http://lostsouls.org", arg1);
|
|
|
+ banner_website(ses, "Lost Souls", "https://lostsouls.org", arg1);
|
|
|
banner_address(ses, "Lost Souls", "ls lostsouls.org 23", arg1);
|
|
|
- banner_expires(ses, "Lost Souls", "2027", arg1);
|
|
|
+ banner_expires(ses, "Lost Souls", "2028", arg1);
|
|
|
+
|
|
|
+
|
|
|
+ banner_create(ses, "Kallisti MUD", arg1);
|
|
|
+
|
|
|
+ banner_desc(ses, "Kallisti MUD",
|
|
|
+ "One of the longest running, most feature rich MUDs in the world with decades\n"
|
|
|
+ "of development. Kallisti boasts a massive original world, great atmosphere of\n"
|
|
|
+ "players, excellent combat system including group formations, ranged combat,\n"
|
|
|
+ "optional PK and arena PvP, extensive character customization, player lineages,\n"
|
|
|
+ "clans, customizable player houses, item crafting, extensively customizable UI,\n"
|
|
|
+ "Mud Sound Protocol, extensive blind player support, MSDP, and so much more.\n"
|
|
|
+ "\n"
|
|
|
+ "This is an amazing game that you could literally play for a decade and still\n"
|
|
|
+ "discover more - you won't be disappointed!", arg1);
|
|
|
|
|
|
+ banner_website(ses, "Kallisti MUD", "https://www.KallistiMUD.com", arg1);
|
|
|
+ banner_address(ses, "Kallisti MUD", "LoK kallistimud.com 4000", arg1);
|
|
|
+ banner_expires(ses, "Kallisti MUD", "2028", arg1);
|
|
|
+ banner_flag(ses, "Kallisti MUD", BANNER_FLAG_DUPLICATE);
|
|
|
|
|
|
banner_create(ses, "Legends of Kallisti", arg1);
|
|
|
|
|
|
@@ -122,9 +152,9 @@ void banner_init(struct session *ses, char *arg1)
|
|
|
"This is an amazing game that you could literally play for a decade and still\n"
|
|
|
"discover more - you won't be disappointed!", arg1);
|
|
|
|
|
|
- banner_website(ses, "Legends of Kallisti", "http://www.KallistiMUD.com", arg1);
|
|
|
- banner_address(ses, "Legends of Kallisti", "LoK kallistimud.com 4000", arg1);
|
|
|
- banner_expires(ses, "Legends of Kallisti", "2027", arg1);
|
|
|
+ banner_website(ses, "Legends of Kallisti", "https://legendsofkallisti.com", arg1);
|
|
|
+ banner_address(ses, "Legends of Kallisti", "LoK legendsofkallisti.com 4000", arg1);
|
|
|
+ banner_expires(ses, "Legends of Kallisti", "2028", arg1);
|
|
|
|
|
|
|
|
|
banner_create(ses, "3Kingdoms", arg1);
|
|
|
@@ -142,7 +172,8 @@ void banner_init(struct session *ses, char *arg1)
|
|
|
|
|
|
banner_website(ses, "3Kingdoms", "http://3k.org", arg1);
|
|
|
banner_address(ses, "3Kingdoms", "3K 3k.org 3000", arg1);
|
|
|
- banner_expires(ses, "3Kingdoms", "2027", arg1);
|
|
|
+ banner_expires(ses, "3Kingdoms", "2028", arg1);
|
|
|
+
|
|
|
|
|
|
banner_create(ses, "RetroMUD", arg1);
|
|
|
|
|
|
@@ -153,24 +184,8 @@ void banner_init(struct session *ses, char *arg1)
|
|
|
|
|
|
banner_website(ses, "RetroMUD", "http://www.retromud.org", arg1);
|
|
|
banner_address(ses, "RetroMUD", "rm 96.126.116.118 3000", arg1);
|
|
|
- banner_expires(ses, "RetroMUD", "2027", arg1);
|
|
|
-
|
|
|
-/*
|
|
|
- banner_create(ses, "New World Ateraan", arg1);
|
|
|
-
|
|
|
- banner_desc(ses, "New World Ateraan",
|
|
|
- "Ateraan is a world of Intensive Roleplaying offering many unique and powerful\n"
|
|
|
- "guilds, races, politics, religion, justice, economy, and a storyline that is\n"
|
|
|
- "dominantly player controlled and based on a novel. The game is based on a\n"
|
|
|
- "Kingdom with knights, merchants, mages, and thieves, and a fierce southern\n"
|
|
|
- "state that has warriors, shaman, slaves, and servants. Ships rule the seas and\n"
|
|
|
- "caravans travel the lands. With 100's of players and features like invasions,\n"
|
|
|
- "ship creation, house building, clans, theaters, leatherball fields, and massive\n"
|
|
|
- "events, the game is incredibly robust and diverse.", arg1);
|
|
|
+ banner_expires(ses, "RetroMUD", "2032", arg1);
|
|
|
|
|
|
- banner_website(ses, "New World Ateraan", "http://www.ateraan.com", arg1);
|
|
|
- banner_address(ses, "New World Ateraan", "nwa ateraan.com 4002", arg1);
|
|
|
- banner_expires(ses, "New World Ateraan", "2026", arg1);
|
|
|
|
|
|
banner_create(ses, "Realm of Utopian Dreams (RUD)", arg1);
|
|
|
|
|
|
@@ -186,8 +201,74 @@ void banner_init(struct session *ses, char *arg1)
|
|
|
|
|
|
banner_website(ses, "Realm of Utopian Dreams (RUD)", "http://rudmud.com", arg1);
|
|
|
banner_address(ses, "Realm of Utopian Dreams (RUD)", "rud rudmud.com 1701", arg1);
|
|
|
- banner_expires(ses, "Realm of Utopian Dreams (RUD)", "2026", arg1);
|
|
|
+ banner_expires(ses, "Realm of Utopian Dreams (RUD)", "2028", arg1);
|
|
|
|
|
|
+
|
|
|
+ banner_create(ses, "Alter Aeon", arg1);
|
|
|
+
|
|
|
+ banner_desc(ses, "Alter Aeon",
|
|
|
+ "Alter Aeon is a custom multiclass MUD, where each of the character\n"
|
|
|
+ "classes can be combined to make very unique characters. This huge\n"
|
|
|
+ "fantasy themed game has hundreds of areas and quests, spanning\n"
|
|
|
+ "several continents and outer planar regions. There are custom spells,\n"
|
|
|
+ "skills, minions, player run shops, boats, PvP, and many other features\n"
|
|
|
+ "for nearly every kind of player. The game is very friendly to new players\n"
|
|
|
+ "and has extensive support for the blind and visually impaired.", arg1);
|
|
|
+
|
|
|
+ banner_website(ses, "Alter Aeon", "https://www.alteraeon.com", arg1);
|
|
|
+ banner_address(ses, "Alter Aeon", "aa alteraeon.com 3000", arg1);
|
|
|
+ banner_expires(ses, "Alter Aeon", "2028", arg1);
|
|
|
+
|
|
|
+
|
|
|
+ banner_create(ses, "Threshold RPG", arg1);
|
|
|
+
|
|
|
+ banner_desc(ses, "Threshold RPG",
|
|
|
+ "Join us at Threshold RPG, one of the oldest RP enforced games on the\n"
|
|
|
+ "internet. Add to twenty-six years of player created history and make your\n"
|
|
|
+ "own mark on the world today. Join a hundred other players who are vying for\n"
|
|
|
+ "political and religious power in complex systems that reward skill, effort,\n"
|
|
|
+ "and social interactions. Threshold RPG is a custom code-base written in\n"
|
|
|
+ "LPC and features a completely unique and original world.", arg1);
|
|
|
+
|
|
|
+ banner_website(ses, "Threshold RPG", "https://www.thresholdrpg.com", arg1);
|
|
|
+ banner_address(ses, "Threshold RPG", "thresh thresholdrpg.com 3333", arg1);
|
|
|
+ banner_expires(ses, "Threshold RPG", "2028", arg1);
|
|
|
+
|
|
|
+
|
|
|
+ banner_create(ses, "Primal Darkness", arg1);
|
|
|
+
|
|
|
+ banner_desc(ses, "Primal Darkness",
|
|
|
+ "Primal Darkness boasts twenty three start races, three quest races, five start\n"
|
|
|
+ "classes and twenty one subclasses to suit your adventuring needs, and a custom\n"
|
|
|
+ "remort system allowing you to save all your hard work while trying out new\n"
|
|
|
+ "races and/or classes. The world has zoned player killing (pk) supported by a\n"
|
|
|
+ "justice system, player built and ran guilds, a fully sail-able ocean with\n"
|
|
|
+ "customizable ships and ship battle system, a fully flyable sky with mapping\n"
|
|
|
+ "system, mud-wide auction line, a colosseum in which to prove your battle\n"
|
|
|
+ "prowess (harmless/free pk), and 30+ areas on multiple continents to explore.", arg1);
|
|
|
+
|
|
|
+ banner_website(ses, "Primal Darkness", "https://www.primaldarkness.com", arg1);
|
|
|
+ banner_address(ses, "Primal Darkness", "pd mud.primaldarkness.com 5000", arg1);
|
|
|
+ banner_expires(ses, "Primal Darkness", "2028", arg1);
|
|
|
+
|
|
|
+
|
|
|
+ banner_create(ses, "New Worlds Ateraan", arg1);
|
|
|
+
|
|
|
+ banner_desc(ses, "New Worlds Ateraan",
|
|
|
+ "Ateraan is a world of Intensive Roleplaying offering many unique and powerful\n"
|
|
|
+ "guilds, races, politics, religion, justice, economy, and a storyline that is\n"
|
|
|
+ "dominantly player controlled and based on a novel. The game is based on a\n"
|
|
|
+ "Kingdom with knights, merchants, mages, and thieves, and a fierce southern\n"
|
|
|
+ "state that has warriors, shaman, slaves, and servants. Ships rule the seas and\n"
|
|
|
+ "caravans travel the lands. With 100's of players and features like invasions,\n"
|
|
|
+ "ship creation, house building, clans, theaters, leatherball fields, and massive\n"
|
|
|
+ "events, the game is incredibly robust and diverse.", arg1);
|
|
|
+
|
|
|
+ banner_website(ses, "New Worlds Ateraan", "http://www.ateraan.com", arg1);
|
|
|
+ banner_address(ses, "New Worlds Ateraan", "nwa ateraan.com 4002", arg1);
|
|
|
+ banner_expires(ses, "New Worlds Ateraan", "2028", arg1);
|
|
|
+
|
|
|
+/*
|
|
|
banner_create(ses, "Carrion Fields", arg1);
|
|
|
|
|
|
banner_desc(ses, "Carrion Fields",
|
|
|
@@ -322,6 +403,10 @@ void banner_save(struct session *ses, char *arg1)
|
|
|
{
|
|
|
node = gtd->banner_list->list[index];
|
|
|
|
|
|
+ if (HAS_BIT(node->shots, BANNER_FLAG_DUPLICATE))
|
|
|
+ {
|
|
|
+ continue;
|
|
|
+ }
|
|
|
sprintf(name, "info[BANNERS][%s]", node->arg1);
|
|
|
|
|
|
arg1 = node->arg4;
|
|
|
@@ -379,6 +464,30 @@ void banner_test(struct session *ses, char *arg1)
|
|
|
|
|
|
struct session *banner_gui(struct session *ses, char *arg1)
|
|
|
{
|
|
|
+ char *data;
|
|
|
+ FILE *fp;
|
|
|
+ size_t len;
|
|
|
+
|
|
|
+ fp = open_memstream(&data, (size_t *) &len);
|
|
|
+
|
|
|
+ fputs(tt_gui, fp);
|
|
|
+
|
|
|
+ fclose(fp);
|
|
|
+
|
|
|
+ fp = fmemopen(data, len, "r");
|
|
|
+
|
|
|
+ gtd->level->quiet++;
|
|
|
+
|
|
|
+ ses = read_file(ses, fp, "tt_gui.h");
|
|
|
+
|
|
|
+ gtd->level->quiet--;
|
|
|
+
|
|
|
+ fclose(fp);
|
|
|
+
|
|
|
+ free(data);
|
|
|
+
|
|
|
+ return ses;
|
|
|
+/*
|
|
|
char filename[PATH_SIZE];
|
|
|
FILE *fp;
|
|
|
|
|
|
@@ -396,6 +505,7 @@ struct session *banner_gui(struct session *ses, char *arg1)
|
|
|
fclose(fp);
|
|
|
|
|
|
return command(ses, do_line, "quiet #read %s", filename);
|
|
|
+*/
|
|
|
}
|
|
|
|
|
|
DO_COMMAND(do_banner)
|
|
|
@@ -426,10 +536,13 @@ DO_COMMAND(do_banner)
|
|
|
{
|
|
|
banner_save(ses, arg1);
|
|
|
}
|
|
|
+ else if (is_abbrev(arg1, "HELP"))
|
|
|
+ {
|
|
|
+ tintin_printf2(ses, "#SYNTAX: #BANNER {GUI|INIT|LIST|RANDOM|SAVE|TEST}");
|
|
|
+ }
|
|
|
else
|
|
|
{
|
|
|
banner_list(ses, arg1);
|
|
|
-// tintin_printf2(ses, "#SYNTAX: #BANNER {INIT|LIST|RANDOM|TEST}");
|
|
|
}
|
|
|
return ses;
|
|
|
}
|
|
|
@@ -437,36 +550,6 @@ DO_COMMAND(do_banner)
|
|
|
// archive
|
|
|
|
|
|
/*
|
|
|
- {
|
|
|
- 1400000000, // 2014
|
|
|
- 1800000000, // 2027
|
|
|
- 100,
|
|
|
-
|
|
|
- "\n"
|
|
|
- "<138> Primal Darkness - http://www.primaldarkness.com\n"
|
|
|
- "\n"
|
|
|
- "<078>Primal Darkness boasts twenty three start races, three quest races, five start\n"
|
|
|
- "<078>classes and twenty one subclasses to suit your adventuring needs, and a custom\n"
|
|
|
- "<078>remort system allowing you to save all your hard work while trying out new\n"
|
|
|
- "<078>races and/or classes. The world has zoned player killing (pk) supported by a\n"
|
|
|
- "<078>justice system, player built and ran guilds, a fully sail-able ocean with\n"
|
|
|
- "<078>customizable ships and ship battle system, a fully flyable sky with mapping\n"
|
|
|
- "<078>system, mud-wide auction line, a colosseum in which to prove your battle\n"
|
|
|
- "<078>prowess (harmless/free pk), and 30+ areas on multiple continents to explore.\n"
|
|
|
- "\n"
|
|
|
- "<178>To connect to Primal Darkness enter: #session pd mud.primaldarkness.com 5000\n"
|
|
|
- "\n",
|
|
|
-
|
|
|
- "\n"
|
|
|
- "<138>Primal Darkness\n"
|
|
|
- "<168>http://www.primaldarkness.com\n"
|
|
|
- "\n"
|
|
|
- "<078>Primal Darkness boasts twenty three start races, three quest races, five start classes and twenty one subclasses to suit your adventuring needs, and a custom remort system allowing you to save all your hard work while trying out new races and/or classes. The world has zoned player killing (pk) supported by a justice system, player built and ran guilds, a fully sail-able ocean with customizable ships and ship battle system, a fully flyable sky with mapping system, mud-wide auction line, a colosseum in which to prove your battle prowess (harmless/free pk), and 30+ areas on multiple continents to explore.\n"
|
|
|
- "\n"
|
|
|
- "<178>To connect to Primal Darkness enter: #session pd mud.primaldarkness.com 5000\n"
|
|
|
- "\n"
|
|
|
- },
|
|
|
-
|
|
|
{
|
|
|
1400000000,
|
|
|
1800000000,
|
|
|
@@ -496,25 +579,6 @@ DO_COMMAND(do_banner)
|
|
|
"\n"
|
|
|
},
|
|
|
|
|
|
- {
|
|
|
- 1400000000,
|
|
|
- 1700000000,
|
|
|
- 100,
|
|
|
- "\n"
|
|
|
- "<138> Alter Aeon - http://www.alteraeon.com\n"
|
|
|
- "\n"
|
|
|
- "<078>Alter Aeon is a custom multiclass MUD, where each of the character\n"
|
|
|
- "<078>classes can be combined to make very unique characters. This huge\n"
|
|
|
- "<078>fantasy themed game has hundreds of areas and quests, spanning\n"
|
|
|
- "<078>several continents and outer planar regions. There are custom spells,\n"
|
|
|
- "<078>skills, minions, player run shops, boats, PvP, and many other features\n"
|
|
|
- "<078>for nearly every kind of player. The game is very friendly to new players\n"
|
|
|
- "<078>and has extensive support for the blind and visually impaired.\n"
|
|
|
- "\n"
|
|
|
- "<178>To connect to Alter Aeon enter: #session aa alteraeon.com 3000\n"
|
|
|
- "\n"
|
|
|
- },
|
|
|
-
|
|
|
{
|
|
|
1260469590, * 10 Dec 2009 *
|
|
|
1323541590, * 10 Dec 2011 *
|
|
|
@@ -533,63 +597,6 @@ DO_COMMAND(do_banner)
|
|
|
"\n"
|
|
|
},
|
|
|
|
|
|
- {
|
|
|
- 1260469590, * 10 Dec 2009 *
|
|
|
- 1323541590, * 10 Dec 2011 *
|
|
|
- "\n"
|
|
|
- "<138> Maiden Desmodus - http://maidendesmodus.com\n"
|
|
|
- "\n"
|
|
|
- "<078>Maiden Desmodus is an immersive world of high adventure where your actions, or\n"
|
|
|
- "<078>inaction, will determine the fate of The Isle. Choose to be born unto one of\n"
|
|
|
- "<078>two opposing factions, join one of the six powerful guilds, and carve your\n"
|
|
|
- "<078>place in history through your cunning, your strategy, and your skill with magic\n"
|
|
|
- "<078>or a blade. At every turn are players who may ally themselves to you, or work\n"
|
|
|
- "<078>to destroy you. Shall you form your own cabal and command your peers, control\n"
|
|
|
- "<078>the politics of your city, or lead an army against those who oppose you?\n"
|
|
|
- "<078>Maiden Desmodus features a completely original world and a custom game engine.\n"
|
|
|
- "\n"
|
|
|
- "<178>To connect to Maiden Desmodus enter: #session md maidendesmodus.com 4000\n"
|
|
|
- "\n"
|
|
|
- },
|
|
|
-
|
|
|
- {
|
|
|
- 1260469590, * 10 Dec 2009 *
|
|
|
- 1323541590, * 10 Dec 2011 *
|
|
|
- "\n"
|
|
|
- "<138> Lost Souls - http://lostsouls.org\n"
|
|
|
- "\n"
|
|
|
- "<078>\"Our world is fallen, boy. Aedaris is a ruin. My grandfather, he told me\n"
|
|
|
- "<078>of days, not so long gone, when everything you see was part of a great empire.\n"
|
|
|
- "<078>Peaceful, he said. Full of wonders. They called it eternal. Funny, eh, boy?\n"
|
|
|
- "<078>They thought it'd last forever, and it went crazy and tore itself apart. But\n"
|
|
|
- "<078>they left behind a few things for us, didn't they? Ha! Yes, lots for us. Now\n"
|
|
|
- "<078>give that wizard-stick here before you blow your fool horns off, and get to\n"
|
|
|
- "<078>work. Daylight's soon, and these faeries aren't going to skin themselves.\"\n"
|
|
|
- "<078>Lost Souls: chaos in the wreckage of empire. Be clever if you want to live.\n"
|
|
|
- "\n"
|
|
|
- "<178>To connect to Lost Souls enter: #session ls lostsouls.org 23\n"
|
|
|
- "\n"
|
|
|
-
|
|
|
- },
|
|
|
-
|
|
|
- {
|
|
|
- 1291140000, * 30 Nov 2010 *
|
|
|
- 1354280000, * 30 Nov 2012 *
|
|
|
- 100,
|
|
|
- "\n"
|
|
|
- "<138> Threshold RPG - http://www.thresholdrpg.com\n"
|
|
|
- "\n"
|
|
|
- "<078>Join us as Threshold RPG, one of the oldest RP enforced games on the\n"
|
|
|
- "<078>internet. Add to thirteen years of player created history and make your own\n"
|
|
|
- "<078>mark on the world today. Join a hundred other players who are vying for\n"
|
|
|
- "<078>political and religious power in complex systems that reward skill, effort,\n"
|
|
|
- "<078>and social interactions. Threshold RPG is a custom code-base written in\n"
|
|
|
- "<078>LPC and features a completely unique and original world.\n"
|
|
|
- "\n"
|
|
|
- "<178>To connect to Threshold RPG enter: #session thresh thresholdrpg.com 23\n"
|
|
|
- "\n"
|
|
|
- },
|
|
|
-
|
|
|
{
|
|
|
1291140000, * 30 Nov 2010 *
|
|
|
1354280000, * 30 Nov 2012 *
|