Type Chart

  D E F E N D I N G

A
T
T
A
C
K
I
N
G

  Normal Fire Water Electric Grass Ice Fighting Poison Ground Flying Psychic Bug Rock Ghost Dragon Dark Steel
Normal                         H X     H
Fire   H H   D D           D H   H   D
Water   D H   H       D       D   H    
Electric     D H H       X D         H    
Grass   H D   H     H D H   H D   H   H
Ice   H H   D H     D D         D   H
Fighting D         D   H   H H H D X   D D
Poison         D     H H       H H     X
Ground   D   D H     D   X   H D       D
Flying       H D   D         D H       H
Psychic             D D     H         X H
Bug   H     D   H     H D     H   D H
Rock   D       D H   H D   D         H
Ghost X                   D     D   H H
Dragon                             D   H
Dark             H       D     D   H H
Steel   H H H   D             D       H

D - Double, H - Half, X - No Effect

For dual-type Pokemon, just multiply the two effects together, for example, a Fire attack done to a Grass/Bug would deal 2x damage for the Fire-Grass and 2x for Fire-Bug, resulting in 4x damage.