Neverwinter Nights
Menú
Gamersmafia es ahora un archivo de solo lectura.

Es una bovada pero no m sale (especie de carnicero)

Lo q quiero acer es q tu llegues, hablas con el carnicero y te pregunte si quieres vender la carne q tienes, al decirle sí, se tiene q llevar toda la carne y darte 5 monedas por pieza. (El tag de la carne es RawMeat). yo he probado con esto: [code:1:a8538e0576]void main() { object oPC = GetPCSpeaker(); object oItem; oItem = GetItemPossessedBy(oPC, “RawMeat”); while (GetIsObjectValid(oItem)==TRUE){ DestroyObject(oItem, 0.0); oItem = GetItemPossessedBy(oPC, “RawMeat”); GiveGoldToCreature(oPC, 5); } }[/code:1:a8538e0576] Pero segun parece el bucle se repite indefinidamente hasta q se desborda, le da unas 38k monedas al pj por un solo trozo de carne. :S Gracias por la ayuda.

[quote:49bfef29df]
oItem = GetItemPossessedBy(oPC, “RawMeat”);
[/quote:49bfef29df]

pq identificas dos veces la variable dos veces??

Lo pongo dos veces pq se destruye, entonces tengo q volver a declararlo pues la primera es pa q lo tenga el qhile, la segunda para q vaya cogiendo el siguiente o por lo menos esa es mi opinion, de todas maneras va mal.

claro que ira mal…., noe s mejor con un if?

while Getisobjectvalid(opc, rawmeat)
{
if (GetItempossesedby(opc, “rawmeat”))

givegoldtocreature….
detroyobject….
}}

[code:1:6218634556]//para mi la mejor manera de realizarlo.
//funciona a la perfeccion ( lo hago de memoria que toy en el insti )
void main()
{
object oPC=GetPCSpeaker(); //si es una conversacion.
object oItem=GetFirstItemInInventory();
string sString="RawMeat";
int nGold=5;

while(GetIsObjectValid(oItem)==TRUE)
{
if(GetTag(oItem)==sString) {
DestroyObject(oItem);
GiveGoldToCreature(oPC,nGold);
}
oItem=GetNextItemInInventory(); //No recuerdo si era asi
//comprueba si se llama asi
// la funcion.
}
}

//mi consejo es cambiar sString="RawMeat" por sString="MEAT" y el tag poniendolo en mayusculas con GetUpperCase o algo parecido y usando FindSubString() sera mucho mas facil para detectar todas las tags de los items. Yo uso este sistema en muchas cosas como en la creacion de cadaveres despues de matar a los NPC, armas rotas armaduras rotas y escudos, son sistemas en los que puedes usarlo.[/code:1:6218634556]

Los más activos en Scripting