Jump to content
  • 0

Ai Function Problem.


sandeagle

Question

1,

i found this ai function:

 

int CNPC::GetInventoryInfo(CSharedCreatureData *spCreature, InventoryParamType param)

 

whats this function means?

it will return the inventory number?or other something?

 

2,

this GetInventoryInfo function was added in C4...i dont find it in C1..

so if i wanna to convert it for C1,how could i do? maybe use other function replace it?

 

 

whats this means?

whtas this c4 ai nasc codez means:

if( (myself::GetInventoryInfo(talker,0) >= ( myself::GetInventoryInfo(talker,1) * 0.800000 )) || (myself::GetInventoryInfo(talker,2) >= ( myself::GetInventoryInfo(talker,3) * 0.800000 )) )
		{
			myself::ShowSystemMessage(talker,1118);
			return;
		}
Edited by sandeagle
Link to comment
Share on other sites

4 answers to this question

Recommended Posts

  • 0

You are correct sandeagle.

 

The function pretty much checks if you are above 80% of inventory - by getting current inven(0) against max (1) and for q inven(2) and q max (3).

This is one of the bigger issues C1 had and caused lotsa crap  when people did Qs with this in the old days.

 

I don't think you can count or get similar function in C1 without extending.

I don't recall a way to iterate thru inventory or stuff in C1.

Edited by mcbigmac
Link to comment
Share on other sites

  • 0

dont know....

 

i think this sould be check players invetery weight/number...

 

coz 1118 message is:

Progress in a quest is possible only when your inventory's weight and volume are less than 80 percent of capacity.

 

so

GetInventoryInfo(CSharedCreatureData *spCreature, InventoryParamType param)

 

the important thing is the second param : InvertoryParamType

ex:

0 is currect items number?

1 is the max number?

2 is currect inventory weight?

3 is the max weight?

 

i dont know...

Link to comment
Share on other sites

  • 0

rly thx...got it...

 

in C1 i think they use this codez:

if (((talker.occupation < 53)  &&  (talker.curslot > 70))  ||  ((talker.occupation >52) && (talker.occupation < 58) &&  (talker.curslot > 90)))
{
    ShowSystemMessage(talker, 1118);
    return;
}
Link to comment
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now


×
×
  • Create New...