From: <mr...@us...> - 2008-08-31 17:42:38
|
Revision: 2142 http://planeshift.svn.sourceforge.net/planeshift/?rev=2142&view=rev Author: mr_dave Date: 2008-08-31 17:42:45 +0000 (Sun, 31 Aug 2008) Log Message: ----------- WRITEABLE flag for maps Modified Paths: -------------- personal/Acissej/docs/history.txt personal/Acissej/src/server/bulkobjects/psitem.cpp personal/Acissej/src/server/database/mysql/item_stats.sql Modified: personal/Acissej/docs/history.txt =================================================================== --- personal/Acissej/docs/history.txt 2008-08-31 15:20:55 UTC (rev 2141) +++ personal/Acissej/docs/history.txt 2008-08-31 17:42:45 UTC (rev 2142) @@ -1,3 +1,6 @@ +*** 2008-08-31 by Dave Bentham +- WRITEABLE flag used in Maps. + *** 2008-08-31 by Steven Patrick - Fix to compiling.html, patch by kougaro. Modified: personal/Acissej/src/server/bulkobjects/psitem.cpp =================================================================== --- personal/Acissej/src/server/bulkobjects/psitem.cpp 2008-08-31 15:20:55 UTC (rev 2141) +++ personal/Acissej/src/server/bulkobjects/psitem.cpp 2008-08-31 17:42:45 UTC (rev 2142) @@ -2746,10 +2746,11 @@ csString xml("<limits>"); xml.AppendFmt("<count>%d</count>",primCount); // This limits how many things you can add on the client. - // If the player is not the crafter, and a crafter is specified, - // or not in the inventory then the player cannot edit the item - if (GetCrafterID() && GetCrafterID() != (uint)client->GetActor()->GetPlayerID() || - GetOwningCharacter() != client->GetCharacterData()) + // writeable sketch? in inventory? author? + bool sketchReadOnly = !(GetBaseStats()->GetIsWriteable() && + GetOwningCharacter() == client->GetCharacterData() && + GetBaseStats()->IsThisTheCreator(client->GetCharacterData()->GetCharacterID())); + if (sketchReadOnly) xml.Append("<rdonly/>"); size_t i=0; Modified: personal/Acissej/src/server/database/mysql/item_stats.sql =================================================================== --- personal/Acissej/src/server/database/mysql/item_stats.sql 2008-08-31 15:20:55 UTC (rev 2141) +++ personal/Acissej/src/server/database/mysql/item_stats.sql 2008-08-31 17:42:45 UTC (rev 2142) @@ -242,7 +242,7 @@ (418,'B','Plate Torso Armor',5.00,100.00,10,0,'TORSO BULK','ARMOR',0.10,7,-1,-1,'STR','AGI','',4.00,4.00,0.00,2.00,2.50,2.00,1.00,0.00,0.00,0.00,0.00,0.00,132,156,216,2701,221,'1c',2,500.00,'ARMOR','',0.00,'',0.00,'',0.00,'0',0,0.0000,0,0,0,1,'A simple leather armor covering the torso','nosound',50,'','',NULL,NULL,-1,2), (419,'B','Treasure Map',1.00,5.00,1,0,'BULK LEFTHAND RIGHTHAND','STACKABLE CREATIVE',0.00,-1,1,1,'0','0','0',0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,42,43,0,0,0,'0',3,50.00,'GENERIC',NULL,0.00,NULL,0.00,NULL,0.00,'0',0,0.0000,0,0,0,0,NULL,'nosound',99,NULL,NULL,NULL,'<creative type=\"sketch\"><content><pages><page l=\"20\" t=\"50\" w=\"300\" h=\"400\"><ic x=\"364\" y=\"260\" i=\"x_01\"/><tx x=\"356\" y=\"292\" t=\"Treasure!\"/><ic x=\"40\" y=\"40\" i=\"house_01\"/><ic x=\"60\" y=\"60\" i=\"house_01\"/><ic x=\"20\" y=\"60\" i=\"house_01\"/><ic x=\"65\" y=\"205\" i=\"grass_01\"/><ic x=\"94\" y=\"196\" i=\"grass_01\"/><ic x=\"237\" y=\"112\" i=\"dec_07\"/><ic x=\"249\" y=\"118\" i=\"dec_07\"/><ic x=\"227\" y=\"120\" i=\"dec_07\"/><ic x=\"124\" y=\"205\" i=\"grass_01\"/><ic x=\"110\" y=\"226\" i=\"grass_01\"/><ic x=\"76\" y=\"225\" i=\"grass_01\"/><ic x=\"75\" y=\"205\" i=\"city_01\"/><tx x=\"23\" y=\"94\" t=\"Outpost\"/><ln pts=\"93 89 165 83\"/><ln pts=\"164 83 269 99\"/><ln pts=\"270 98 286 138\"/><ln pts=\"286 139 268 161\"/><ln pts=\"268 162 197 154\"/></page></pages></content></creative>',-1,2); INSERT INTO `item_stats` VALUES (420,'B','Door lock',1.00,1.00,7,0,'BULK','STACKABLE',0.10,-1,-1,-1,'0','0','0',0.00,0.00,0.00,0.00,0.00,0.00,4.00,2.00,0.20,0.20,0.20,0.00,42,43,0,0,0,'3c',3,200.00,'','',0.00,'',0.00,'',0.00,'0',0,0.0000,0,0,0,0,'0','nosound',50,'','',NULL,NULL,-1,2), - (421,'B','Blank Map',1.00,5.00,1,0,'BULK LEFTHAND RIGHTHAND','STACKABLE BUY_PERSONALISE CREATIVE',0.00,-1,1,1,'0','0','0',0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,42,43,0,0,0,'0',3,50.00,'GENERIC',NULL,0.00,NULL,0.00,NULL,0.00,'0',0,0.0000,0,0,0,0,NULL,'nosound',99,NULL,NULL,NULL,'<creative type=\"sketch\"><content><pages><page l=\"20\" t=\"50\" w=\"300\" h=\"400\"></page></pages></content></creative>',-1,2), + (421,'B','Blank Map',1.00,5.00,1,0,'BULK LEFTHAND RIGHTHAND','STACKABLE BUY_PERSONALISE CREATIVE WRITEABLE',0.00,-1,1,1,'0','0','0',0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,42,43,0,0,0,'0',3,50.00,'GENERIC',NULL,0.00,NULL,0.00,NULL,0.00,'0',0,0.0000,0,0,0,0,NULL,'nosound',99,NULL,NULL,NULL,'<creative type=\"sketch\"><content><pages><page l=\"20\" t=\"50\" w=\"300\" h=\"400\"></page></pages></content></creative>',-1,2), (462,'B','Armors repair kit',5.00,100.00,5,0,'BULK RIGHTHAND LEFTHAND','STACKABLE',0.10,30,-1,-1,'','','',0.00,0.00,0.00,0.00,0.00,0.00,1.00,0.00,0.00,0.00,0.00,0.00,149,157,0,0,0,'0',2,50.00,'HAMMER','',0.00,'',0.00,'',0.00,'0',0,0.0000,0,0,0,1,'A kit of spare parts and tools that allows you to repair an armor','nosound',100,'','',NULL,'',-1,2), (531,'B','Weapons repair kit',4.00,100.00,4,0,'BULK RIGHTHAND LEFTHAND','STACKABLE',0.10,33,-1,-1,'0','0','0',0.00,0.00,0.00,0.10,0.00,0.00,1.00,0.00,0.10,0.00,0.10,0.00,149,157,0,0,0,'Hammer',1,40.00,'HAMMER','',0.00,'',0.00,'',0.00,'0',0,0.0000,0,0,0,1,'A kit of spare parts and tools that allows you to repair a weapon','nosound',1,'','',NULL,'',-1,2); INSERT INTO `item_stats` VALUES (600,'B','Buffed Sword of Strength',7.00,5.00,100,0,'BULK LEFTHAND RIGHTHAND','MELEEWEAPON',0.10,0,-1,-1,'0','0','0',0.00,0.00,0.00,6.00,0.00,0.00,4.00,2.00,0.20,0.20,0.20,0.00,32,33,0,0,0,'Sabre',1,150.00,'SWORD','',0.00,'',0.00,'',0.00,'0',0,0.0000,0,0,0,1,'0','nosound',50,'equip_sword_buffed','',NULL,NULL,-1,2), This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |