From: <ken...@us...> - 2009-02-27 04:21:22
|
Revision: 3113 http://planeshift.svn.sourceforge.net/planeshift/?rev=3113&view=rev Author: kennygraunke Date: 2009-02-27 04:21:18 +0000 (Fri, 27 Feb 2009) Log Message: ----------- Fixed a bug where the primary skill was used instead of the secondary skill. Not sure of the ramifications of this; found by code inspection. Modified Paths: -------------- trunk/src/server/bulkobjects/psitem.cpp Modified: trunk/src/server/bulkobjects/psitem.cpp =================================================================== --- trunk/src/server/bulkobjects/psitem.cpp 2009-02-27 01:59:53 UTC (rev 3112) +++ trunk/src/server/bulkobjects/psitem.cpp 2009-02-27 04:21:18 UTC (rev 3113) @@ -2731,7 +2731,7 @@ int secSkill = skillArray->Get(count)->secSkillId; if(secSkill != 0) { - if (skillArray->Get(count)->minSecSkill >= (int)character->Skills().GetSkillRank((PSSKILL)priSkill)) + if (skillArray->Get(count)->minSecSkill >= (int)character->Skills().GetSkillRank((PSSKILL)secSkill)) { return; } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <wel...@us...> - 2009-03-25 10:55:29
|
Revision: 3308 http://planeshift.svn.sourceforge.net/planeshift/?rev=3308&view=rev Author: weltall2 Date: 2009-03-25 10:55:26 +0000 (Wed, 25 Mar 2009) Log Message: ----------- added quality and maxquality for coherence Modified Paths: -------------- trunk/src/server/bulkobjects/psitem.cpp Modified: trunk/src/server/bulkobjects/psitem.cpp =================================================================== --- trunk/src/server/bulkobjects/psitem.cpp 2009-03-25 09:37:53 UTC (rev 3307) +++ trunk/src/server/bulkobjects/psitem.cpp 2009-03-25 10:55:26 UTC (rev 3308) @@ -1762,6 +1762,8 @@ MathEnvironment env; env.Define("Price", current_stats->GetPrice().GetTotal()); + env.Define("Quality", GetItemQuality()); + env.Define("MaxQuality", GetMaxItemQuality()); script->Evaluate(&env); MathVar *finalPrice = env.Lookup("FinalPrice"); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <wel...@us...> - 2009-05-13 07:17:22
|
Revision: 3670 http://planeshift.svn.sourceforge.net/planeshift/?rev=3670&view=rev Author: weltall2 Date: 2009-05-13 07:17:13 +0000 (Wed, 13 May 2009) Log Message: ----------- fixed hardcoded category ids checks in order to show detailed informations about armors and weapons, using flags is more sane Modified Paths: -------------- trunk/src/server/bulkobjects/psitem.cpp Modified: trunk/src/server/bulkobjects/psitem.cpp =================================================================== --- trunk/src/server/bulkobjects/psitem.cpp 2009-05-12 19:08:06 UTC (rev 3669) +++ trunk/src/server/bulkobjects/psitem.cpp 2009-05-13 07:17:13 UTC (rev 3670) @@ -2609,7 +2609,7 @@ } // Item is a weapon - if ( GetCategory()->id == 1 ) + if ( GetIsMeleeWeapon() || GetIsRangeWeapon() ) { csString speed, damage; // Weapon Speed @@ -2634,7 +2634,7 @@ } // Item is armor - if ( GetCategory()->id == 2) + if ( GetIsArmor() ) { csString armor_type = "\n\n"; switch (GetBaseStats()->Armor().Type()) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ko...@us...> - 2009-06-09 04:40:46
|
Revision: 3828 http://planeshift.svn.sourceforge.net/planeshift/?rev=3828&view=rev Author: kougaro Date: 2009-06-09 04:40:00 +0000 (Tue, 09 Jun 2009) Log Message: ----------- Stupid test is stupid, this should correct a bug with crafting books Modified Paths: -------------- trunk/src/server/bulkobjects/psitem.cpp Modified: trunk/src/server/bulkobjects/psitem.cpp =================================================================== --- trunk/src/server/bulkobjects/psitem.cpp 2009-06-09 04:09:04 UTC (rev 3827) +++ trunk/src/server/bulkobjects/psitem.cpp 2009-06-09 04:40:00 UTC (rev 3828) @@ -2777,14 +2777,14 @@ { // Check if craft step minimum primary skill level is meet by client int priSkill = skillArray->Get(count)->priSkillId; - if(priSkill >= 0 && skillArray->Get(count)->minPriSkill >= character->Skills().GetSkillRank((PSSKILL) priSkill).Current()) + if(priSkill >= 0 && skillArray->Get(count)->minPriSkill > character->Skills().GetSkillRank((PSSKILL) priSkill).Current()) { continue; } // Check if craft step minimum secondary skill level is meet by client int secSkill = skillArray->Get(count)->secSkillId; - if(secSkill >= 0 && skillArray->Get(count)->minSecSkill >= (int)character->Skills().GetSkillRank((PSSKILL) secSkill).Current()) + if(secSkill >= 0 && skillArray->Get(count)->minSecSkill > (int)character->Skills().GetSkillRank((PSSKILL) secSkill).Current()) { continue; } @@ -2805,14 +2805,14 @@ { // Check if craft step minimum primary skill level is meet by client int priSkill = craftArray->Get(count)->priSkillId; - if(priSkill >= 0 && craftArray->Get(count)->minPriSkill >= character->Skills().GetSkillRank((PSSKILL) priSkill).Current()) + if(priSkill >= 0 && craftArray->Get(count)->minPriSkill > character->Skills().GetSkillRank((PSSKILL) priSkill).Current()) { continue; } // Check if craft step minimum seconday skill level is meet by client int secSkill = craftArray->Get(count)->secSkillId; - if(secSkill >= 0 && craftArray->Get(count)->minSecSkill >= (int) character->Skills().GetSkillRank((PSSKILL) secSkill).Current()) + if(secSkill >= 0 && craftArray->Get(count)->minSecSkill > (int) character->Skills().GetSkillRank((PSSKILL) secSkill).Current()) { continue; } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <mg...@us...> - 2009-07-26 19:09:10
|
Revision: 4131 http://planeshift.svn.sourceforge.net/planeshift/?rev=4131&view=rev Author: mgist Date: 2009-07-26 19:09:03 +0000 (Sun, 26 Jul 2009) Log Message: ----------- - Made weight, size and stack more explicit in item description. Resolves #1034. Modified Paths: -------------- trunk/src/server/bulkobjects/psitem.cpp Modified: trunk/src/server/bulkobjects/psitem.cpp =================================================================== --- trunk/src/server/bulkobjects/psitem.cpp 2009-07-26 14:57:11 UTC (rev 4130) +++ trunk/src/server/bulkobjects/psitem.cpp 2009-07-26 19:09:03 UTC (rev 4131) @@ -2551,8 +2551,18 @@ } itemCategory.Format( "Category: %s", current_stats->GetCategory()->name.GetData() ); - weight.Format("\nWeight: %.2f", GetWeight() ); - size.Format("\nSize: %hu", GetItemSize() ); + float fweight = GetWeight(); + unsigned short ssize = GetItemSize(); + if(stack_count > 1) + { + weight.Format("\nWeight: %.2f (%hu x %.2f)", fweight, stack_count, fweight/stack_count); + size.Format("\nSize: %hu (%hu x %hu)", ssize*stack_count, stack_count, ssize); + } + else + { + weight.Format("\nWeight: %.2f", fweight); + size.Format("\nSize: %hu", ssize); + } itemInfo += itemCategory+weight+size; // Check identify skill before sending quality detail This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <wel...@us...> - 2009-11-26 18:37:10
|
Revision: 4797 http://planeshift.svn.sourceforge.net/planeshift/?rev=4797&view=rev Author: weltall2 Date: 2009-11-26 18:36:45 +0000 (Thu, 26 Nov 2009) Log Message: ----------- fixed wrong dependency Modified Paths: -------------- trunk/src/server/bulkobjects/psitem.cpp Modified: trunk/src/server/bulkobjects/psitem.cpp =================================================================== --- trunk/src/server/bulkobjects/psitem.cpp 2009-11-26 03:17:12 UTC (rev 4796) +++ trunk/src/server/bulkobjects/psitem.cpp 2009-11-26 18:36:45 UTC (rev 4797) @@ -1804,7 +1804,7 @@ } MathEnvironment env; - env.Define("Price", current_stats->GetPrice().GetTotal()); + env.Define("Price", GetPrice().GetTotal()); env.Define("Quality", GetItemQuality()); env.Define("MaxQuality", GetMaxItemQuality()); script->Evaluate(&env); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <wel...@us...> - 2009-11-27 18:11:12
|
Revision: 4805 http://planeshift.svn.sourceforge.net/planeshift/?rev=4805&view=rev Author: weltall2 Date: 2009-11-27 18:11:06 +0000 (Fri, 27 Nov 2009) Log Message: ----------- fixed another wrong variable Modified Paths: -------------- trunk/src/server/bulkobjects/psitem.cpp Modified: trunk/src/server/bulkobjects/psitem.cpp =================================================================== --- trunk/src/server/bulkobjects/psitem.cpp 2009-11-27 17:29:04 UTC (rev 4804) +++ trunk/src/server/bulkobjects/psitem.cpp 2009-11-27 18:11:06 UTC (rev 4805) @@ -1795,7 +1795,7 @@ if (!script) { Error1("Cannot find mathscript: Calc Item Sell Price"); - int sellPrice = (int)(current_stats->GetPrice().GetTotal() * 0.8); + int sellPrice = (int)(GetPrice().GetTotal() * 0.8); if (sellPrice == 0) { sellPrice = 1; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <wel...@us...> - 2010-01-04 07:42:41
|
Revision: 5152 http://planeshift.svn.sourceforge.net/planeshift/?rev=5152&view=rev Author: weltall2 Date: 2010-01-04 07:42:30 +0000 (Mon, 04 Jan 2010) Log Message: ----------- added BaseQuality to price math scripts Modified Paths: -------------- trunk/src/server/bulkobjects/psitem.cpp Modified: trunk/src/server/bulkobjects/psitem.cpp =================================================================== --- trunk/src/server/bulkobjects/psitem.cpp 2010-01-04 01:02:28 UTC (rev 5151) +++ trunk/src/server/bulkobjects/psitem.cpp 2010-01-04 07:42:30 UTC (rev 5152) @@ -1776,6 +1776,7 @@ env.Define("Price", current_stats->GetPrice().GetTotal()); env.Define("Quality", GetItemQuality()); env.Define("MaxQuality", GetMaxItemQuality()); + env.Define("BaseQuality", current_stats->GetQuality()); script->Evaluate(&env); MathVar *finalPrice = env.Lookup("FinalPrice"); @@ -1807,6 +1808,7 @@ env.Define("Price", GetPrice().GetTotal()); env.Define("Quality", GetItemQuality()); env.Define("MaxQuality", GetMaxItemQuality()); + env.Define("BaseQuality", current_stats->GetQuality()); script->Evaluate(&env); MathVar *finalPrice = env.Lookup("FinalPrice"); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <wel...@us...> - 2010-01-12 21:56:06
|
Revision: 5256 http://planeshift.svn.sourceforge.net/planeshift/?rev=5256&view=rev Author: weltall2 Date: 2010-01-12 21:56:00 +0000 (Tue, 12 Jan 2010) Log Message: ----------- this should be initialized or laanx might crash :P Modified Paths: -------------- trunk/src/server/bulkobjects/psitem.cpp Modified: trunk/src/server/bulkobjects/psitem.cpp =================================================================== --- trunk/src/server/bulkobjects/psitem.cpp 2010-01-12 19:46:13 UTC (rev 5255) +++ trunk/src/server/bulkobjects/psitem.cpp 2010-01-12 21:56:00 UTC (rev 5256) @@ -182,6 +182,7 @@ lockStrength = 0; lockpickSkill = PSSKILL_NONE; schedule = NULL; + equipActiveSpell = NULL; } psItem::~psItem() This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <rly...@us...> - 2010-08-01 01:22:03
|
Revision: 6084 http://planeshift.svn.sourceforge.net/planeshift/?rev=6084&view=rev Author: rlydontknow Date: 2010-08-01 01:21:57 +0000 (Sun, 01 Aug 2010) Log Message: ----------- show armor stats as well Modified Paths: -------------- trunk/src/server/bulkobjects/psitem.cpp Modified: trunk/src/server/bulkobjects/psitem.cpp =================================================================== --- trunk/src/server/bulkobjects/psitem.cpp 2010-08-01 01:21:34 UTC (rev 6083) +++ trunk/src/server/bulkobjects/psitem.cpp 2010-08-01 01:21:57 UTC (rev 6084) @@ -2696,6 +2696,20 @@ default: break; } + armor_type += "\n\nArmor:"; + float dmgSlash, dmgBlunt, dmgPierce; + dmgSlash = GetDamage(PSITEMSTATS_DAMAGETYPE_SLASH); + dmgBlunt = GetDamage(PSITEMSTATS_DAMAGETYPE_BLUNT); + dmgPierce = GetDamage(PSITEMSTATS_DAMAGETYPE_PIERCE); + + // Only worth printing if their value is not zero + if ( dmgSlash ) + armor_type += csString().Format( "\n Slash: %.2f", dmgSlash ); + if ( dmgBlunt ) + armor_type += csString().Format( "\n Blunt: %.2f", dmgBlunt ); + if ( dmgPierce ) + armor_type += csString().Format( "\n Pierce: %.2f", dmgPierce ); + itemInfo += armor_type; } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <wel...@us...> - 2010-08-18 15:07:54
|
Revision: 6169 http://planeshift.svn.sourceforge.net/planeshift/?rev=6169&view=rev Author: weltall2 Date: 2010-08-18 15:07:40 +0000 (Wed, 18 Aug 2010) Log Message: ----------- added support for empty string in the creative definition Modified Paths: -------------- trunk/src/server/bulkobjects/psitem.cpp Modified: trunk/src/server/bulkobjects/psitem.cpp =================================================================== --- trunk/src/server/bulkobjects/psitem.cpp 2010-08-18 15:06:13 UTC (rev 6168) +++ trunk/src/server/bulkobjects/psitem.cpp 2010-08-18 15:07:40 UTC (rev 6169) @@ -465,7 +465,9 @@ item_name = row["item_name"]; item_description = row["item_description"]; - if(row["creative_definition"] && current_stats->GetCreative() != PSITEMSTATS_CREATIVETYPE_NONE) + //the check for empty string is done as last as it's actually a save case for a db bug (empty + //creative definitions should be null) + if(row["creative_definition"] && current_stats->GetCreative() != PSITEMSTATS_CREATIVETYPE_NONE && *row["creative_definition"]) { creativeStats.ReadStats(row); } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <wel...@us...> - 2010-08-22 17:36:43
|
Revision: 6171 http://planeshift.svn.sourceforge.net/planeshift/?rev=6171&view=rev Author: weltall2 Date: 2010-08-22 17:36:37 +0000 (Sun, 22 Aug 2010) Log Message: ----------- should save the creative definition when the item is committed not before else we lack the uid Modified Paths: -------------- trunk/src/server/bulkobjects/psitem.cpp Modified: trunk/src/server/bulkobjects/psitem.cpp =================================================================== --- trunk/src/server/bulkobjects/psitem.cpp 2010-08-20 08:11:09 UTC (rev 6170) +++ trunk/src/server/bulkobjects/psitem.cpp 2010-08-22 17:36:37 UTC (rev 6171) @@ -482,10 +482,7 @@ //creative stat creativeStats.creativeDefinitionXML = current_stats->getCreativeXML(); //loads the xml definition we've just prepared - creativeStats.ReadStats(); - //saves the data in the instance. - creativeStats.SaveCreation(uid); - + creativeStats.ReadStats(); } void psItem::Save(bool children) @@ -799,6 +796,10 @@ { item_quality_original = item_quality; SetUID(db->GetLastInsertID()); + //saves the creative data in the instance if any as we need an uid for it to work and we have it + //only now + if(creativeStats.creativeType != PSITEMSTATS_CREATIVETYPE_NONE) + creativeStats.SaveCreation(uid); } else Error2("Failed to insert item instance!\nError: %s", db->GetLastError()); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <wel...@us...> - 2010-08-23 02:50:37
|
Revision: 6172 http://planeshift.svn.sourceforge.net/planeshift/?rev=6172&view=rev Author: weltall2 Date: 2010-08-23 02:50:31 +0000 (Mon, 23 Aug 2010) Log Message: ----------- added support for book trading Modified Paths: -------------- trunk/src/server/bulkobjects/psitem.cpp Modified: trunk/src/server/bulkobjects/psitem.cpp =================================================================== --- trunk/src/server/bulkobjects/psitem.cpp 2010-08-22 17:36:37 UTC (rev 6171) +++ trunk/src/server/bulkobjects/psitem.cpp 2010-08-23 02:50:31 UTC (rev 6172) @@ -1514,6 +1514,9 @@ //unique name & description are the same target->item_name = item_name; target->item_description = item_description; + + //copy the creative stats to the new item + target->creativeStats = creativeStats; target->SetGuardingCharacterID(GetGuardingCharacterID()); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <rly...@us...> - 2010-09-21 14:49:16
|
Revision: 6208 http://planeshift.svn.sourceforge.net/planeshift/?rev=6208&view=rev Author: rlydontknow Date: 2010-09-21 14:49:05 +0000 (Tue, 21 Sep 2010) Log Message: ----------- added properties "TargetedBlockValue" and "UntargetedBlockValue" Modified Paths: -------------- trunk/src/server/bulkobjects/psitem.cpp Modified: trunk/src/server/bulkobjects/psitem.cpp =================================================================== --- trunk/src/server/bulkobjects/psitem.cpp 2010-09-20 16:32:06 UTC (rev 6207) +++ trunk/src/server/bulkobjects/psitem.cpp 2010-09-21 14:49:05 UTC (rev 6208) @@ -2024,6 +2024,14 @@ { return GetCounterBlockValue(); } + else if (!strcasecmp(ptr,"UntargetedBlockValue")) + { + return GetUntargetedBlockValue(); + } + else if (!strcasecmp(ptr,"TargetedBlockValue")) + { + return GetTargetedBlockValue(); + } else if (!strcasecmp(ptr,"Hardness")) { return GetHardness(); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <wel...@us...> - 2010-09-25 14:49:51
|
Revision: 6220 http://planeshift.svn.sourceforge.net/planeshift/?rev=6220&view=rev Author: weltall2 Date: 2010-09-25 14:49:45 +0000 (Sat, 25 Sep 2010) Log Message: ----------- improved comments in psitem Modified Paths: -------------- trunk/src/server/bulkobjects/psitem.cpp Modified: trunk/src/server/bulkobjects/psitem.cpp =================================================================== --- trunk/src/server/bulkobjects/psitem.cpp 2010-09-25 14:42:17 UTC (rev 6219) +++ trunk/src/server/bulkobjects/psitem.cpp 2010-09-25 14:49:45 UTC (rev 6220) @@ -19,7 +19,6 @@ #include <psconfig.h> #include <limits> -#include <math.h> //============================================================================= // Crystal Space Includes @@ -70,7 +69,9 @@ #if SAVE_TRACER #include <csutil/callstack.h> #endif -//#define csNaN(x) (*(int*)&x == 0x7FC00000) + +//temporary hack as csNaN,isnan etc seems to not be behaving correctly. +#define csNaN(x) (*(int*)&x == 0x7FC00000) /** * This class handles auto-removal of transient objects * (objects placed in the world by players, basically). @@ -231,6 +232,8 @@ if (gItem) gItem->UnregisterCallback(this); gItem = NULL; + + //remove the itemModifiers class as it's no more needed delete itemModifiers; } @@ -485,8 +488,9 @@ AddLootModifier(row.GetUInt32("suffix"),1); AddLootModifier(row.GetUInt32("adjective"),2); + //then apply them. psserver->GetCacheManager()->ApplyItemModifiers(current_stats, itemModifiers, modifierIds); - printf("%s\n", itemModifiers->name.GetData()); + return true; } @@ -821,6 +825,8 @@ targetQuery->AddField("charges",GetCharges()); + + //saves the modifiers applied to this item. for now 3 due to how the schema is done. targetQuery->AddField("prefix",modifierIds.Get(0)); targetQuery->AddField("suffix",modifierIds.Get(1)); targetQuery->AddField("adjective",modifierIds.Get(2)); @@ -1557,6 +1563,7 @@ //copy the creative stats to the new item target->creativeStats = creativeStats; + //copy the modifier ids to the new item target->modifierIds = modifierIds; target->SetGuardingCharacterID(GetGuardingCharacterID()); @@ -1570,6 +1577,7 @@ } target->SetOwningCharacter( owning_character); + //generate the overlay cache of the modifiers in the new item. target->UpdateModifiers(); } @@ -1722,10 +1730,15 @@ const char *psItem::GetName() const { + //first check if this item was explictly given a special name if (!item_name.IsEmpty()) return item_name; + + //then check if the item modifier overlay gives a name to this item. if(itemModifiers->active && !itemModifiers->name.IsEmpty()) return itemModifiers->name; + + //fallback to the standard item name return current_stats->GetName(); } @@ -1990,6 +2003,7 @@ const char *psItem::GetMeshName() { + //do we have an overlay? if(itemModifiers->active && !itemModifiers->mesh.IsEmpty()) return itemModifiers->mesh; return current_stats->GetMeshName(); @@ -2449,11 +2463,14 @@ if(requirements[y].name == itemModifiers->reqs[i].name) { found = true; + //if the current requirement is lower than the new one set that one. if(requirements[y].min_value < itemModifiers->reqs[i].min_value) requirements[y].min_value = itemModifiers->reqs[i].min_value; break; } } + + //if not found we add it to the list of requirement if(!found) requirements.Push(itemModifiers->reqs[i]); } @@ -3280,6 +3297,7 @@ { active = false; equip_script = NULL; + //set those variables to nan to indicate they aren't active. damageStats[0] = damageStats[1] = damageStats[2] = latency = weight = std::numeric_limits<float>::signaling_NaN(); // latency = std::numeric_limits<float>::signaling_NaN(); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <rly...@us...> - 2010-09-27 14:58:30
|
Revision: 6226 http://planeshift.svn.sourceforge.net/planeshift/?rev=6226&view=rev Author: rlydontknow Date: 2010-09-27 14:58:24 +0000 (Mon, 27 Sep 2010) Log Message: ----------- added properties to psItem that allow determining the item type in scripts (IsShield, IsMeleeWeapon, IsRangeWeapon, IsAmmo, IsArmor) Modified Paths: -------------- trunk/src/server/bulkobjects/psitem.cpp Modified: trunk/src/server/bulkobjects/psitem.cpp =================================================================== --- trunk/src/server/bulkobjects/psitem.cpp 2010-09-27 14:54:55 UTC (rev 6225) +++ trunk/src/server/bulkobjects/psitem.cpp 2010-09-27 14:58:24 UTC (rev 6226) @@ -2210,6 +2210,26 @@ { return (double)GetArmorType(); } + else if (!strcasecmp(ptr,"IsMeleeWeapon")) + { + return (double)GetIsMeleeWeapon(); + } + else if (!strcasecmp(ptr,"IsRangeWeapon")) + { + return (double)GetIsRangeWeapon(); + } + else if (!strcasecmp(ptr,"IsAmmo")) + { + return (double)GetIsAmmo(); + } + else if (!strcasecmp(ptr,"IsArmor")) + { + return (double)GetIsArmor(); + } + else if (!strcasecmp(ptr,"IsShield")) + { + return (double)GetIsShield(); + } else { CPrintf(CON_ERROR, "psItem::GetProperty(%s) failed\n",ptr); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <wel...@us...> - 2010-09-29 16:18:29
|
Revision: 6237 http://planeshift.svn.sourceforge.net/planeshift/?rev=6237&view=rev Author: weltall2 Date: 2010-09-29 16:18:22 +0000 (Wed, 29 Sep 2010) Log Message: ----------- forgot this commit Modified Paths: -------------- trunk/src/server/bulkobjects/psitem.cpp Modified: trunk/src/server/bulkobjects/psitem.cpp =================================================================== --- trunk/src/server/bulkobjects/psitem.cpp 2010-09-29 13:34:49 UTC (rev 6236) +++ trunk/src/server/bulkobjects/psitem.cpp 2010-09-29 16:18:22 UTC (rev 6237) @@ -71,7 +71,8 @@ #endif //temporary hack as csNaN,isnan etc seems to not be behaving correctly. -#define csNaN(x) (*(int*)&x == 0x7FC00000) +#define csNaN(x) ((*(int*)&x & 0x7FC00000) == 0x7FC00000) + /** * This class handles auto-removal of transient objects * (objects placed in the world by players, basically). @@ -3318,16 +3319,17 @@ active = false; equip_script = NULL; //set those variables to nan to indicate they aren't active. - damageStats[0] = damageStats[1] = damageStats[2] = latency = weight = std::numeric_limits<float>::signaling_NaN(); + damageStats[0] = damageStats[1] = damageStats[2] = latency = weight = std::numeric_limits<float>::quiet_NaN(); + // printf("nan? %d %d %f %X\n", csNaN(latency), isnan(latency), latency, *(int*)&latency); - // latency = std::numeric_limits<float>::signaling_NaN(); + /* latency = std::numeric_limits<float>::signaling_NaN(); - // printf("nan? %d %d %d %f %X\n", nanso,csNaN(latency), isnan(latency), latency, *(int*)&latency); - // damageStats[0] = damageStats[1] = damageStats[2] = latency = weight = std::numeric_limits<float>::signaling_NaN(); - // latency = sqrt(-1); - // printf("nan? %d %d %d %d %f %X\n", true, csNaN(latency), isnan(latency), std::isnan(latency),latency,*(int*)&latency); - + printf("nan? %d %d %d %f %X\n", csNaN(latency), isnan(latency), latency, *(int*)&latency); + damageStats[0] = damageStats[1] = damageStats[2] = latency = weight = std::numeric_limits<float>::signaling_NaN(); + latency = sqrt(-1); + printf("nan? %d %d %d %d %f %X\n", true, csNaN(latency), isnan(latency), std::isnan(latency),latency,*(int*)&latency); +*/ } RandomizedOverlay::~RandomizedOverlay() This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <wel...@us...> - 2010-10-27 19:14:01
|
Revision: 6320 http://planeshift.svn.sourceforge.net/planeshift/?rev=6320&view=rev Author: weltall2 Date: 2010-10-27 19:13:55 +0000 (Wed, 27 Oct 2010) Log Message: ----------- some code it seems i forgot to commit some weeks ago Modified Paths: -------------- trunk/src/server/bulkobjects/psitem.cpp Modified: trunk/src/server/bulkobjects/psitem.cpp =================================================================== --- trunk/src/server/bulkobjects/psitem.cpp 2010-10-27 19:13:02 UTC (rev 6319) +++ trunk/src/server/bulkobjects/psitem.cpp 2010-10-27 19:13:55 UTC (rev 6320) @@ -2027,6 +2027,9 @@ const char *psItem::GetImageName() { + //do we have an overlay? + if(itemModifiers->active && !itemModifiers->icon.IsEmpty()) + return itemModifiers->icon; return current_stats->GetImageName(); } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <wel...@us...> - 2010-11-05 14:09:39
|
Revision: 6347 http://planeshift.svn.sourceforge.net/planeshift/?rev=6347&view=rev Author: weltall2 Date: 2010-11-05 14:09:33 +0000 (Fri, 05 Nov 2010) Log Message: ----------- additional changes to size_t, some of them pointed out by mikesflowers Modified Paths: -------------- trunk/src/server/bulkobjects/psitem.cpp Modified: trunk/src/server/bulkobjects/psitem.cpp =================================================================== --- trunk/src/server/bulkobjects/psitem.cpp 2010-11-05 14:05:12 UTC (rev 6346) +++ trunk/src/server/bulkobjects/psitem.cpp 2010-11-05 14:09:33 UTC (rev 6347) @@ -2478,10 +2478,10 @@ //maybe this should be optimized? if(itemModifiers->active) { - for(int i = 0; i < itemModifiers->reqs.GetSize(); i++) + for(size_t i = 0; i < itemModifiers->reqs.GetSize(); i++) { bool found = false; - for(int y = 0; y < requirements.GetSize(); y++) + for(size_t y = 0; y < requirements.GetSize(); y++) { //if the name of the requirement is the same and it's higher substituite the previous one. if(requirements[y].name == itemModifiers->reqs[i].name) @@ -2504,7 +2504,7 @@ csString needed = "You need to have "; bool first= true; - for (int z = 0; z < requirements.GetSize(); z++) + for (size_t z = 0; z < requirements.GetSize(); z++) { PSITEMSTATS_STAT stat = psserver->GetCacheManager()->ConvertAttributeString(requirements[z].name); if ( stat != PSITEMSTATS_STAT_NONE ) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <wel...@us...> - 2010-11-27 23:07:41
|
Revision: 6459 http://planeshift.svn.sourceforge.net/planeshift/?rev=6459&view=rev Author: weltall2 Date: 2010-11-27 23:07:35 +0000 (Sat, 27 Nov 2010) Log Message: ----------- fixed PS#160 - Show weight of containers patch by mikesflovers Modified Paths: -------------- trunk/src/server/bulkobjects/psitem.cpp Modified: trunk/src/server/bulkobjects/psitem.cpp =================================================================== --- trunk/src/server/bulkobjects/psitem.cpp 2010-11-27 22:50:41 UTC (rev 6458) +++ trunk/src/server/bulkobjects/psitem.cpp 2010-11-27 23:07:35 UTC (rev 6459) @@ -3006,11 +3006,21 @@ csString desc( GetDescription() ); // FIXME: This function is called for world containers too... - desc.AppendFmt("\n\nWeight: %.2f\nCapacity: %.2f/%u", - client->GetCharacterData()->Inventory().GetContainedWeight(this), - client->GetCharacterData()->Inventory().GetContainedSize(this), - GetContainerMaxSize() ); + psCharacterInventory& inv = client->GetCharacterData()->Inventory(); + float containerWeight = GetWeight(); + desc.AppendFmt("\n\n%s Weight: %.2f\n", GetName(), containerWeight); + + if(inv.GetContainedItemCount(this) > 0) + { + float containedWeight = inv.GetContainedWeight(this); + desc.AppendFmt("Contents Weight: %.2f\nTotal Weight: %.2f\n\n", + containedWeight, + containedWeight + containerWeight); + } + + desc.AppendFmt("Capacity: %.2f/%u", inv.GetContainedSize(this), GetContainerMaxSize()); + psViewItemDescription outgoing( client->GetClientNum(), GetName(), desc, This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <rly...@us...> - 2010-12-26 00:52:22
|
Revision: 6599 http://planeshift.svn.sourceforge.net/planeshift/?rev=6599&view=rev Author: rlydontknow Date: 2010-12-26 00:52:16 +0000 (Sun, 26 Dec 2010) Log Message: ----------- removed superflous commented printfs Modified Paths: -------------- trunk/src/server/bulkobjects/psitem.cpp Modified: trunk/src/server/bulkobjects/psitem.cpp =================================================================== --- trunk/src/server/bulkobjects/psitem.cpp 2010-12-26 00:47:31 UTC (rev 6598) +++ trunk/src/server/bulkobjects/psitem.cpp 2010-12-26 00:52:16 UTC (rev 6599) @@ -3325,18 +3325,9 @@ { active = false; equip_script = NULL; + //set those variables to nan to indicate they aren't active. damageStats[0] = damageStats[1] = damageStats[2] = latency = weight = std::numeric_limits<float>::quiet_NaN(); - // printf("nan? %d %d %f %X\n", csNaN(latency), isnan(latency), latency, *(int*)&latency); - - /* latency = std::numeric_limits<float>::signaling_NaN(); - - - printf("nan? %d %d %d %f %X\n", csNaN(latency), isnan(latency), latency, *(int*)&latency); - damageStats[0] = damageStats[1] = damageStats[2] = latency = weight = std::numeric_limits<float>::signaling_NaN(); - latency = sqrt(-1); - printf("nan? %d %d %d %d %f %X\n", true, csNaN(latency), isnan(latency), std::isnan(latency),latency,*(int*)&latency); -*/ } RandomizedOverlay::~RandomizedOverlay() This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <wel...@us...> - 2010-12-26 09:34:44
|
Revision: 6609 http://planeshift.svn.sourceforge.net/planeshift/?rev=6609&view=rev Author: weltall2 Date: 2010-12-26 09:34:38 +0000 (Sun, 26 Dec 2010) Log Message: ----------- removed csNaN reimplementation as CS:IsNaN uses bitwise checking for nan Modified Paths: -------------- trunk/src/server/bulkobjects/psitem.cpp Modified: trunk/src/server/bulkobjects/psitem.cpp =================================================================== --- trunk/src/server/bulkobjects/psitem.cpp 2010-12-26 09:33:33 UTC (rev 6608) +++ trunk/src/server/bulkobjects/psitem.cpp 2010-12-26 09:34:38 UTC (rev 6609) @@ -70,9 +70,6 @@ #include <csutil/callstack.h> #endif -//temporary hack as csNaN,isnan etc seems to not be behaving correctly. -#define csNaN(x) ((*(int*)&x & 0x7FC00000) == 0x7FC00000) - /** * This class handles auto-removal of transient objects * (objects placed in the world by players, basically). @@ -1783,7 +1780,7 @@ float psItem::GetLatency() { //we have a modification overlay? - if(itemModifiers->active && !csNaN(itemModifiers->latency)) + if(itemModifiers->active && !CS::IsNaN(itemModifiers->latency)) return itemModifiers->latency; return current_stats->Weapon().Latency(); } @@ -1792,7 +1789,7 @@ float psItem::GetDamage(PSITEMSTATS_DAMAGETYPE dmgtype) { //we have a modification overlay? - if(itemModifiers->active && !csNaN(itemModifiers->damageStats[dmgtype])) + if(itemModifiers->active && !CS::IsNaN(itemModifiers->damageStats[dmgtype])) return itemModifiers->damageStats[dmgtype]; return current_stats->Weapon().Damage(dmgtype); } @@ -1836,7 +1833,7 @@ { useNat = false; //we have a modification overlay? - if(itemModifiers->active && !csNaN(itemModifiers->damageStats[dmgtype])) + if(itemModifiers->active && !CS::IsNaN(itemModifiers->damageStats[dmgtype])) return itemModifiers->damageStats[dmgtype]; return current_stats->Armor().Protection(dmgtype); } @@ -1872,7 +1869,7 @@ float psItem::GetWeight() { //we have a modification overlay? - if(itemModifiers->active && !csNaN(itemModifiers->weight)) + if(itemModifiers->active && !CS::IsNaN(itemModifiers->weight)) return (itemModifiers->weight * GetStackCount()); return (current_stats->GetWeight() * GetStackCount()); } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <wel...@us...> - 2011-02-13 22:42:47
|
Revision: 6936 http://planeshift.svn.sourceforge.net/planeshift/?rev=6936&view=rev Author: weltall2 Date: 2011-02-13 22:42:41 +0000 (Sun, 13 Feb 2011) Log Message: ----------- fixed empty string being sent if there was no description associated to the action location Modified Paths: -------------- trunk/src/server/bulkobjects/psitem.cpp Modified: trunk/src/server/bulkobjects/psitem.cpp =================================================================== --- trunk/src/server/bulkobjects/psitem.cpp 2011-02-13 22:18:25 UTC (rev 6935) +++ trunk/src/server/bulkobjects/psitem.cpp 2011-02-13 22:42:41 UTC (rev 6936) @@ -3293,7 +3293,7 @@ csString icon( GetImageName() ); csString description = action->GetDescription(); - if ( description ) + if (description.Lenght()) { desc = description.GetData(); } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <wel...@us...> - 2011-02-13 22:44:42
|
Revision: 6937 http://planeshift.svn.sourceforge.net/planeshift/?rev=6937&view=rev Author: weltall2 Date: 2011-02-13 22:44:36 +0000 (Sun, 13 Feb 2011) Log Message: ----------- inverted letters Modified Paths: -------------- trunk/src/server/bulkobjects/psitem.cpp Modified: trunk/src/server/bulkobjects/psitem.cpp =================================================================== --- trunk/src/server/bulkobjects/psitem.cpp 2011-02-13 22:42:41 UTC (rev 6936) +++ trunk/src/server/bulkobjects/psitem.cpp 2011-02-13 22:44:36 UTC (rev 6937) @@ -3293,7 +3293,7 @@ csString icon( GetImageName() ); csString description = action->GetDescription(); - if (description.Lenght()) + if (description.Length()) { desc = description.GetData(); } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <wel...@us...> - 2011-11-19 16:40:32
|
Revision: 7730 http://planeshift.svn.sourceforge.net/planeshift/?rev=7730&view=rev Author: weltall2 Date: 2011-11-19 16:40:26 +0000 (Sat, 19 Nov 2011) Log Message: ----------- fixed wrong flagging Modified Paths: -------------- trunk/src/server/bulkobjects/psitem.cpp Modified: trunk/src/server/bulkobjects/psitem.cpp =================================================================== --- trunk/src/server/bulkobjects/psitem.cpp 2011-11-19 15:53:35 UTC (rev 7729) +++ trunk/src/server/bulkobjects/psitem.cpp 2011-11-19 16:40:26 UTC (rev 7730) @@ -330,14 +330,14 @@ flags |= PSITEM_FLAG_PURIFIED; } if (flagstr.FindSubString("PURIFYING",0,true)!=-1) - { + { flags |= PSITEM_FLAG_PURIFIED; } if (flagstr.FindSubString("NOPICKUP",0,true)!=-1) { flags |= PSITEM_FLAG_NOPICKUP; } - if (flagstr.FindSubString("NOPICKUPWEAK",0,true)!=-1) + if (flagstr.FindSubString("NOWEAKPICKUP",0,true)!=-1) { flags |= PSITEM_FLAG_NOPICKUPWEAK; } @@ -718,7 +718,7 @@ if (flags & PSITEM_FLAG_NOPICKUPWEAK) { if (!flagString.IsEmpty()) flagString.Append(","); - flagString.Append("NOPICKUPWEAK"); + flagString.Append("NOWEAKPICKUP"); } if (flags & PSITEM_FLAG_TRANSIENT) { @@ -1216,7 +1216,7 @@ SetItemQuality(statptr->GetQuality()); // Set pickupability based on movability, but only if the item is currently pickupable - if ((flags & PSITEM_FLAG_NOPICKUP) == 0 || (flags & PSITEM_FLAG_NOPICKUPWEAK) == 0) + if (!GetIsNoPickup()) SetIsPickupable(!statptr->GetUnmovable()); if (current_stats==base_stats) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |