Compare commits
No commits in common. "master" and "Töten_eingebaut_XD" have entirely different histories.
master
...
Töten_eing
|
@ -2,13 +2,13 @@
|
|||
|
||||
// "4CGS-Init" in die Objektbeschreibung eintragen, um ein Objekt zu initialsieren oder die Werte neu zu setzen
|
||||
|
||||
integer m_num_slots = 8; // ANzahl Slots, die der Spieler hat
|
||||
integer m_num_slots = 8; // Anzahl Slots, die der Spieler hat
|
||||
integer m_max_slots = 8; // Anzahl mx. erreichbare Slots
|
||||
key klicker = NULL_KEY; // Wer hat geklickt?
|
||||
string m_itemName = "navi_wasserbeutel"; // Name für den Pfad, unter dem dieses Objekt auf dem Server verwaltet wird.
|
||||
string m_displayName = "Na'vi Wasserbeutel"; // Angezeigter Name des Sammelobjektes
|
||||
string m_desc = "Ein voller Na'vi Wasserbeutel."; // Kurzbeschreibung
|
||||
string m_item_weight = "1.5"; // Gewicht des Gegenstandes (für max. Ztaglast benötigt)
|
||||
string m_item_weight = "5.5"; // Gewicht des Gegenstandes (für max. Ztaglast benötigt)
|
||||
string m_desc_long = "Wasserbeutel werden für den Transport von Flüssigkeiten benutzt. Sie fassen ca. 1/2 Liter Wasser. Die Na'vi stellen diese Behälter aus verschiednen Ledersorten, Riemen und Hölzern her. "; // Anschauen Text
|
||||
string m_eat = "Trinken"; // Button-Text für Aktion
|
||||
string m_watch = "Anschauen"; // Button-Text, um die lange Beschreibung zu lesen (Anschauen).
|
||||
|
@ -19,9 +19,9 @@ string m_hp = "5"; // Wieviel
|
|||
string m_food = "0"; // Wieviel Nahrung wird dazu addiert? (Negative Werte ziehen Nahrung ab)
|
||||
string m_water = "50"; // Wieviel Wasser wird dazu addiert? (Negative Werte ziehen Wasser ab)
|
||||
float m_range = 5.0; // Wie weit darf der Avatar vom Giver entfernt sein (1 ... 96m, 0 = Beliebig)
|
||||
integer m_time_fix = 0; // Zeit, wie lange das Objekt unsichtbar ist (in Sekunden). Wenn 0 = Deaktiviert
|
||||
integer m_time_fix = 3; // Zeit, wie lange das Objekt unsichtbar ist (in Sekunden). Wenn 0 = Deaktiviert
|
||||
integer m_time_rnd = 0; // Zufällige Zeit, die der Fixzeit hinzuaddiert wird und die zwischen 0 und dem hier angegebenen Wert liegt.
|
||||
integer m_rnd = -1; // Wenn > 1, wird eine zufällige Anzahl von 1 ... m_rnd gesammelt. Wenn Wert negativ, dann diese Anzahl dazu rechnen.
|
||||
integer m_rnd = -2; // Wenn > 1, wird eine zufällige Anzahl von 1 ... m_rnd gesammelt. Wenn Wert negativ, dann diese Anzahl dazu rechnen.
|
||||
integer m_minlevel = 0; // Wenn Sammler einen kleineren Level hat, entscheidet der Zufall, ob er das Itam bekommt.
|
||||
integer m_isunique = FALSE; // Falls TRUE, wird beim "Entsorgen" abgefragt, ob man das möchte.
|
||||
|
||||
|
@ -35,7 +35,7 @@ string m_lang_collected = "Du hast {0} x {1} genommen und {2} Erfahru
|
|||
string m_lang_used = "Du hast {0} benutzt und {1} Erfahrungspunkte (XP) dazu bekommen.";
|
||||
string m_lang_wronggroup = "Entweder Du hast nicht die richtige Gruppe aktiviert oder '{0}' hat nicht die Landgruppe.";
|
||||
string m_lang_init = "Das Objekt '{0}' [Itemname: '{1}'] ] wurde initialisiert.";
|
||||
string m_lang_tooheavy = "Das ist zu schwer für Dich. Du kannst nur max. {0}kg tragen.";
|
||||
string m_lang_tooheavy = "Das ist noch zu schwer für Dich. Du kannst nur max. {0}kg tragen.";
|
||||
string m_lang_level_too_low = "Um '{0}' zu sammlen, musst Du mindestens Level {1} erreichen. Du bekommst aber dennoch {2} Erfahrungspunkte (XP) dazu.";
|
||||
|
||||
|
||||
|
@ -44,7 +44,7 @@ default
|
|||
state_entry()
|
||||
{
|
||||
llSetAlpha(255, ALL_SIDES);
|
||||
if(llGetObjectDesc() == "4CGS-Init" || !osCheckDataValue("item." + m_itemName))
|
||||
if(llGetObjectDesc() == "4CGS-Init")
|
||||
{
|
||||
llSetObjectDesc("");
|
||||
llOwnerSay(osFormatString(m_lang_init, [m_displayName, m_itemName]));
|
||||
|
@ -83,12 +83,12 @@ default
|
|||
integer _slot = getNextFreeInventorySlot(_dataStorage, m_itemName);
|
||||
integer _level = llList2Integer(calcLevelData(_dataStorage), 0);
|
||||
|
||||
m_num = 1;
|
||||
integer m_num = 1;
|
||||
if(m_rnd > 1)
|
||||
m_num = (integer)(llFrand(m_rnd) + 1);
|
||||
else if (m_rnd < 0)
|
||||
m_num = -m_rnd;
|
||||
m_weight_total = (float)m_num * (float)m_item_weight;
|
||||
m_num = - m_rnd;
|
||||
m_weight_total = m_num * (float)m_item_weight;
|
||||
|
||||
if(!llSameGroup(klicker))
|
||||
{
|
||||
|
@ -143,26 +143,30 @@ state sammeln
|
|||
{
|
||||
state_entry()
|
||||
{
|
||||
llOwnerSay((string)m_num);
|
||||
list _dataStorage = getDataListFromDataStorage("game.hud.player." + klicker);
|
||||
integer _slot = getNextFreeInventorySlot(_dataStorage, m_itemName);
|
||||
integer _level = llList2Integer(calcLevelData(_dataStorage), 0);
|
||||
integer _xp = (integer)getDataEntryFromDataList(_dataStorage, "stats.xp");
|
||||
list _dataStorage = getDataListFromDataStorage("game.hud.player." + klicker);
|
||||
integer _slot = getNextFreeInventorySlot(_dataStorage, m_itemName);
|
||||
integer _level = llList2Integer(calcLevelData(_dataStorage), 0);
|
||||
integer _xp = (integer)getDataEntryFromDataList(_dataStorage, "stats.xp");
|
||||
|
||||
if(_level >= (integer)m_minlevel)
|
||||
{
|
||||
_dataStorage = setDataEntryInDataList(_dataStorage, "stats.xp", _xp + (m_num * (integer)m_xp_collect));
|
||||
_dataStorage = setDataEntryInDataList(_dataStorage, "inventar.slot." + _slot, m_itemName);
|
||||
_dataStorage = setDataEntryInDataList(_dataStorage, "inventar.slot." + _slot + ".count", getItemCountFromSlot(_dataStorage, _slot) + m_num);
|
||||
llRegionSayTo(klicker, 0, osFormatString(m_lang_collected, [(string)m_num, m_displayName, (string)(m_num * (integer)m_xp_collect)]));
|
||||
_dataStorage = setDataEntryInDataList(_dataStorage, "stats.xp", _xp + (m_num * (integer) m_xp_collect));
|
||||
_dataStorage = setDataEntryInDataList(_dataStorage, "inventar.slot." + _slot, m_itemName);
|
||||
_dataStorage = setDataEntryInDataList(_dataStorage, "inventar.slot." + _slot + ".count", getItemCountFromSlot(_dataStorage, _slot) + m_num);
|
||||
}
|
||||
else
|
||||
{
|
||||
//m_num = 0;
|
||||
_dataStorage = setDataEntryInDataList(_dataStorage, "stats.xp", _xp + (integer)m_xp_collect);
|
||||
llRegionSayTo(klicker, 0, osFormatString(m_lang_level_too_low, [m_displayName, m_minlevel, (string)m_xp_collect]));
|
||||
_dataStorage = setDataEntryInDataList(_dataStorage, "stats.xp", _xp + m_xp_collect);
|
||||
llRegionSayTo(klicker, 0, osFormatString(m_lang_level_too_low, [m_displayName, _level, (string)m_xp_collect]));
|
||||
}
|
||||
|
||||
|
||||
_dataStorage = setDataEntryInDataList(_dataStorage, "stats.xp", _xp + (m_num * (integer) m_xp_collect));
|
||||
_dataStorage = setDataEntryInDataList(_dataStorage, "inventar.slot." + _slot, m_itemName);
|
||||
_dataStorage = setDataEntryInDataList(_dataStorage, "inventar.slot." + _slot + ".count", getItemCountFromSlot(_dataStorage, _slot) + m_num);
|
||||
|
||||
saveDataListToDataStorage(_dataStorage, ("game.hud.player." + klicker));
|
||||
llSay((integer)getDataEntryFromDataList(_dataStorage, "channel"), "gamecommand;reload");
|
||||
|
Loading…
Reference in New Issue