Not logged inClonkspot Forum
Forum Home Help Search Register Login
Up Topic Deutsch / Hilfestellung / [Gelöst] Beschränkung beim Kauf von Dingen
- - By Serpens66 (More than 200 posts.) Date 23.10.2014 13:08
Ich möchte, dass man maximal 10 Clonks aufeinmal haben kann.  Wenn welche sterben, soll man aber wieder neue dazu kaufen können.

Spontan würde ich jetzt sagen, ich muss dazu die Funktion finden, die für das Kaufen von Dingen zuständig ist... und dort dann eine Zählung der Clonks durchführen und eben eine Meldung rausgeben, wenn es zuviele sind... Wisst ihr ob es die offen gibt, und wenn ja wo?

Oder wie könnte ich es stattdessen lösen?
Parent - - By Drome (More than 50 posts.) Date 23.10.2014 16:56
Du kannst ja einfach im OnClonkDeath-Callback die Zahl der kaufbaren Clonks einfach erhöhen. Also:

func OnClonkDeath(object pClonk, int iKiller) {
  DoHomebaseMaterial(GetOwner(pClonk), GetID(pClonk), 1);
}

im Szenarienskript. Wenn du dann auch noch Nachschub ausschaltest, sollte man ja nicht mehr Clonks bekommen können.
Parent - - By Serpens66 (More than 200 posts.) Date 23.10.2014 18:29
das ist ein super hinweis, danke :)   hab mich schon lange gefragt, wie ich allgemein die kaufbaren Dinge etwas beschränke, z.b dass etwas erst zum zeitpunkt x kaufbar wird :) 

die Funktion wird immer aufgerufen, wenn ein Clonk (egal ob hazard oder sonst einer) stirbt?
Parent - - By Drome (More than 50 posts.) Date 23.10.2014 18:33

>die Funktion wird immer aufgerufen, wenn ein Clonk (egal ob hazard oder sonst einer) stirbt?


Joa, zumindest für alle Clonks, die sich von CLNK ableiten und die Death-Funktion nicht überschreiben (s. hier).
Parent - By Mupf (More than 200 posts.) Date 23.10.2014 20:40
Den Artikel kannte ich noch nicht. Sehr nützlich, danke!
Parent - - By Zapper (More than 500 posts.) Date 23.10.2014 20:58
Und nicht das `return _inherited(pClonk, iKiller);` vergessen, sonst wunderst du dich irgendwann warum irgendwelche Relaunches nicht mehr gehen
Parent - - By Serpens66 (More than 200 posts.) Date 23.10.2014 21:41
danke, wollte eig noch fragen, ob da ein inherited hinsollte, aber habs gelassen, weil ich dachte, dass in meinem szenarioskript diese funktion bisher eh nicht genutzt wird.
Aber sicher ist sicher, stimmt :)
Parent - By Zapper (More than 500 posts.) Date 23.10.2014 21:54
Ja, im Szenarienscript ist das echt ziemlich ungefährlich, wenn du nicht selbst noch am Anfang vom Szenarienscript `#include` benutzt.
Up Topic Deutsch / Hilfestellung / [Gelöst] Beschränkung beim Kauf von Dingen

Powered by mwForum 2.29.7 © 1999-2015 Markus Wichitill