Jump to content
  • 0

How can i talk to a NPC via Python?


OnlyGood

Question

Hey, how can i talk to a specific NPC?
 

I know about

vid = player.GetTargetVID()
net.SendOnClickPacket(vid)

but with this, the NPC has to be marked.

 

The problem is, the vid of this specific NPC always changes if i teleport away.

 

Is there a way, how i can scan the vid of a specific NPC nearby and automatic talk to it, if im in x range?

Edited by OnlyGood
Link to comment
Share on other sites

1 answer to this question

Recommended Posts

  • 1
  • Honorable Member

CPythonCharacterManager has functions like CharacterInstanceBegin and CharacterInstanceEnd so you can iterate over the characters nearby like:

TPixelPosition myPos;
CPythonPlayer::instance().NEW_GetMainActorPosition(&myPos);

CPythonCharacterManager& chrMgr = CPythonCharacterManager::instance();
for (auto it = chrMgr.CharacterInstanceBegin(); it != chrMgr.CharacterInstanceEnd(); ++it)
{
	if (CInstanceBase* ch = *it)
	{
		TPixelPosition otherPos;
		ch->NEW_GetPixelPosition(&otherPos);
		if(GetPixelPositionDistance(myPos, otherPos) <= SOME DISTANCE && some other thing to identify your npc)
		{
			CPythonNetworkStream::Instance().SendOnClickPacket(ch->GetVirtualID());
		}
	}
}

 

Edited by Distraught
  • Love 1

WRnRW3H.gif

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now


  • Activity

    1. 43

      Upgraded Reference (TMP4 Base) By Ulthar

    2. 2

      TXT File To Lower Case [Phaselis Map Works]

    3. 43

      Upgraded Reference (TMP4 Base) By Ulthar

    4. 43

      Upgraded Reference (TMP4 Base) By Ulthar

    5. 5

      Official Environment Effect Options [REVERSED]

    6. 1

      4 Alternatives Open Source to Trello

  • Recently Browsing

    • No registered users viewing this page.
×
×
  • Create New...

Important Information

Terms of Use / Privacy Policy / Guidelines / We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.